From 7b51a1dbec2c234f88447b288efaee024feeb147 Mon Sep 17 00:00:00 2001 From: wqyfavor Date: Thu, 1 Aug 2019 11:08:30 +0800 Subject: [PATCH] [iOS] Protect animation argument missing which cause crash on iOS. (#2771) --- ios/sdk/WeexSDK/Sources/Module/WXAnimationModule.m | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/ios/sdk/WeexSDK/Sources/Module/WXAnimationModule.m b/ios/sdk/WeexSDK/Sources/Module/WXAnimationModule.m index 7c774554ad..2e94053dbe 100644 --- a/ios/sdk/WeexSDK/Sources/Module/WXAnimationModule.m +++ b/ios/sdk/WeexSDK/Sources/Module/WXAnimationModule.m @@ -332,6 +332,10 @@ - (void)transitionWithArgs:(NSDictionary *)args withProperty:(NSString *)propert transition:(WXTransition*)transition transitionDic:(NSMutableDictionary*)transitionDic { + if (args[@"styles"][property] == nil) { + return; + } + [transition.filterStyles setObject:args[@"styles"][property] forKey:property]; id oldStyleValue = target.styles[property]; @@ -346,7 +350,7 @@ - (void)transitionWithArgs:(NSDictionary *)args withProperty:(NSString *)propert [target _modifyStyles:@{property:args[@"styles"][property]}]; [transitionDic setObject:@([args[@"duration"] doubleValue]) forKey:kWXTransitionDuration]; [transitionDic setObject:@([args[@"delay"] doubleValue]) forKey:kWXTransitionDelay]; - [transitionDic setObject:args[@"timingFunction"] forKey:kWXTransitionTimingFunction]; + [transitionDic setObject:args[@"timingFunction"] ?: @"linear" forKey:kWXTransitionTimingFunction]; } - (void)animation:(WXComponent *)targetComponent args:(NSDictionary *)args callback:(WXModuleKeepAliveCallback)callback