Buggy code:
} break ; case AppTransition . TRANSIT_TASK_OPEN : if ( ( mActivityAnimations [ 2 ] ) != 0 ) { mIsResId = true ; int [ ] animArray = AwesomeAnimationHelper . getAnimations ( mActivityAnimations [ 2 ] , mExitOnly , mReverseExit ) ; animAttr = ( enter ) ? animArray [ 1 ] : animArray [ 0 ] ; } else { animAttr = ( enter ) ? styleable . WindowAnimation_taskOpenEnterAnimation : styleable . WindowAnimation_taskOpenExitAnimation ; } break ; case AppTransition . TRANSIT_TASK_CLOSE : if ( ( mActivityAnimations [ 3 ] ) != 0 ) { mIsResId = true ; int [ ] animArray = AwesomeAnimationHelper . getAnimations ( mActivityAnimations [ 3 ] , mExitOnly , mReverseExit ) ; animAttr = ( enter ) ? animArray [ 1 ] : animArray [ 0 ] ; } else { animAttr = ( enter ) ? styleable . WindowAnimation_taskCloseEnterAnimation : styleable . WindowAnimation_taskCloseExitAnimation ; } break ; case AppTransition . TRANSIT_TASK_TO_FRONT : if ( ( mActivityAnimations [ 4 ] ) != 0 ) { mIsResId = true ; int [ ] animArray = AwesomeAnimationHelper . getAnimations ( mActivityAnimations [ 4 ] , mExitOnly , mReverseExit ) ; animAttr = ( enter ) ? animArray [ 1 ] : animArray [ 0 ] ; } else { animAttr = ( enter ) ? styleable . WindowAnimation_taskToFrontEnterAnimation : styleable . WindowAnimation_taskToFrontExitAnimation ; } break ; case AppTransition . TRANSIT_TASK_TO_BACK : if ( ( mActivityAnimations [ 5 ] ) != 0 ) { mIsResId = true ; int [ ] animArray = AwesomeAnimationHelper . getAnimations ( mActivityAnimations [ 5 ] , mExitOnly , mReverseExit ) ; animAttr = ( enter ) ? animArray [ 1 ] : animArray [ 0 ] ; } else { animAttr = ( enter ) ? styleable . WindowAnimation_taskToBackEnterAnimation : styleable . WindowAnimation_taskToBackExitAnimation ; } break ; case AppTransition . TRANSIT_WALLPAPER_OPEN : if ( ( mActivityAnimations [ 6 ] ) != 0 ) { mIsResId = true ; int [ ] animArray = AwesomeAnimationHelper . getAnimations ( mActivityAnimations [ 6 ] , mExitOnly , mReverseExit ) ; animAttr = ( enter ) ? animArray [ 1 ] : animArray [ 0 ] ; } else { animAttr = ( enter ) ? styleable . WindowAnimation_wallpaperOpenEnterAnimation : styleable . WindowAnimation_wallpaperOpenExitAnimation ; } break ; case AppTransition . TRANSIT_WALLPAPER_CLOSE : if ( ( mActivityAnimations [ 7 ] ) != 0 ) { mIsResId = true ; int [ ] animArray = AwesomeAnimationHelper . getAnimations ( mActivityAnimations [ 7 ] , mExitOnly , mReverseExit ) ; animAttr = ( enter ) ? animArray [ 1 ] : animArray [ 0 ] ; } else { animAttr = ( enter ) ? styleable . WindowAnimation_wallpaperCloseEnterAnimation : styleable . WindowAnimation_wallpaperCloseExitAnimation ; } break ; case AppTransition . TRANSIT_WALLPAPER_INTRA_OPEN : if ( ( mActivityAnimations [ 8 ] ) != 0 ) { mIsResId = true ; int [ ] animArray = AwesomeAnimationHelper . getAnimations ( mActivityAnimations [ 8 ] , mExitOnly , mReverseExit ) ; animAttr = ( enter ) ? animArray [ 1 ] : animArray [ 0 ] ; } else { animAttr = ( enter ) ? styleable . WindowAnimation_wallpaperIntraOpenEnterAnimation : styleable . WindowAnimation_wallpaperIntraOpenExitAnimation ; } break ; case AppTransition . TRANSIT_WALLPAPER_INTRA_CLOSE : if ( ( mActivityAnimations [ 9 ] ) != 0 ) { mIsResId = true ; int [ ] animArray = AwesomeAnimationHelper . getAnimations ( mActivityAnimations [ 9 ] , mExitOnly , mReverseExit ) ; animAttr = ( enter ) ? animArray [ 1 ] : animArray [ 0 ] ; } else { animAttr = ( enter ) ? styleable . WindowAnimation_wallpaperIntraCloseEnterAnimation : styleable . WindowAnimation_wallpaperIntraCloseExitAnimation ; } break ; case AppTransition . TRANSIT_TASK_OPEN_BEHIND : if ( ( mActivityAnimations [ 10 ] ) != 0 ) { mIsResId = true ; <START_BUG> int [ ] animArray = AwesomeAnimationHelper . getAnimations ( mActivityAnimations [ 10 ] ) ; <END_BUG> animAttr = ( enter ) ? animArray [ 1 ] : animArray [ 0 ] ; } else { animAttr = ( enter ) ? styleable . WindowAnimation_launchTaskBehindSourceAnimation : styleable . WindowAnimation_launchTaskBehindTargetAnimation ; } } a = ( animAttr != 0 ) ? loadAnimationAttr ( lp , animAttr ) : null ; if ( a != null ) { if ( ( mAnimationDuration ) > 0 ) { a . setDuration ( mAnimationDuration ) ; } } mIsResId = false ; if ( ( AppTransition . DEBUG_APP_TRANSITIONS ) || ( AppTransition . DEBUG_ANIM ) ) Slog . v ( AppTransition . TAG , ( ( ( ( ( ( ( ( ( ( "applyAnimation:" + "<seq2seq4repair_space>anim=" ) + a ) + "<seq2seq4repair_space>animAttr=0x" ) + ( Integer . toHexString ( animAttr ) ) ) + "<seq2seq4repair_space>transit=" ) + transit ) + "<seq2seq4repair_space>isEntrance=" ) + enter ) + "<seq2seq4repair_space>Callers=" ) + ( Debug . getCallers ( 3 ) ) ) ) ; } return a ; } void postAnimationCallback ( ) { } void overridePendingAppTransition ( String packageName , int enterAnim , int exitAnim , IRemoteCallback startedCallback ) { } void overridePendingAppTransitionScaleUp ( int startX , int startY , int startWidth , int startHeight ) { } void overridePendingAppTransitionThumb ( Bitmap srcThumb , int startX , int startY , IRemoteCallback startedCallback , boolean scaleUp ) { } void overridePendingAppTransitionAspectScaledThumb ( Bitmap srcThumb , int startX , int startY , int targetWidth , int targetHeight , IRemoteCallback startedCallback , boolean scaleUp ) { } @ Override public String toString ( ) { } public static String appTransitionToString ( int transition ) { } private String appStateToString ( ) { } private String transitTypeToString ( ) { } @ Override public void dump ( PrintWriter pw ) { } public void setCurrentUser ( int newUserId ) { } private class SettingsObserver extends ContentObserver { SettingsObserver ( Handler handler ) { } void observe ( ) { } @ Override public void onChange ( boolean selfChange ) { } } private void updateSettings ( ) { }

Fix:
int [ ] animArray = AwesomeAnimationHelper . getAnimations ( mActivityAnimations [ 10 ] , mExitOnly , mReverseExit ) ;