Skip to content

Commit 4164c16

Browse files
committed
Merge pull request #8 from longbai/filerecorder_nil_error
file recorder nil error check
2 parents 1b782cf + 9f037f6 commit 4164c16

File tree

2 files changed

+16
-2
lines changed

2 files changed

+16
-2
lines changed

QiniuSDK/Recorder/QNFileRecorder.m

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -35,8 +35,12 @@ + (instancetype)fileRecorderWithFolder:(NSString *)directory
3535
+ (instancetype)fileRecorderWithFolder:(NSString *)directory
3636
encodeKey:(BOOL)encode
3737
error:(NSError *__autoreleasing *)perror {
38-
[[NSFileManager defaultManager] createDirectoryAtPath:directory withIntermediateDirectories:YES attributes:nil error:perror];
39-
if (*perror != nil) {
38+
NSError *error;
39+
[[NSFileManager defaultManager] createDirectoryAtPath:directory withIntermediateDirectories:YES attributes:nil error:&error];
40+
if (error != nil) {
41+
if (perror) {
42+
*perror = error;
43+
}
4044
return nil;
4145
}
4246

QiniuSDKTests/QNFileRecorderTest.m

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,16 @@ - (void)setUp {
3838
#endif
3939
}
4040

41+
- (void)testInit {
42+
NSError *error = nil;
43+
[QNFileRecorder fileRecorderWithFolder:[NSTemporaryDirectory() stringByAppendingString:@"qiniutest"] error:&error];
44+
XCTAssert(error == nil, @"Pass");
45+
[QNFileRecorder fileRecorderWithFolder:@"/qiniutest" error:&error];
46+
NSLog(@"file recorder %@", error);
47+
XCTAssert(error != nil, @"Pass");
48+
[QNFileRecorder fileRecorderWithFolder:@"/qiniutest" error:nil];
49+
}
50+
4151
- (void)template:(int)size pos:(float)pos {
4252
NSURL *tempFile = [QNTempFile createTempfileWithSize:size * 1024];
4353
NSString *keyUp = [NSString stringWithFormat:@"r-%dk", size];

0 commit comments

Comments
 (0)