Программа получила сигнал: «EXC_BAD_ACCESS».в то время как - [parsedxmlstring isEqualToString: textviewstring]? - PullRequest
1 голос
/ 23 января 2012

Вскоре я анализирую XML-файл и получаю пароль пользователя MD5. Теперь, когда я сравниваю проанализированный пароль и заданный пользователем пароль в текстовом поле, я нахожу Program received signal: “EXC_BAD_ACCESS”

когда я не сравниваю эти пароли, тогда выполняется код. Вот мой код.

if([checkingParsedPassword isEqualToString:passwordMD5String]){
tabbarController = [[TabbarController alloc] initWithNibName:@"TabbarController" bundle:nil];
UINavigationController *myTabbarController = [[[UINavigationController alloc] initWithRootViewController:tabbarController] autorelease];
myTabbarController.navigationBar.barStyle = UIBarStyleBlackOpaque;
[self.navigationController presentModalViewController:myTabbarController animated:YES];
[tabbarController release];    
}

Если мне нужно дать вам больше информации, пожалуйста, не стесняйтесь, потому что у меня серьезные проблемы.

EDIT

когда я использую NSLog ... я вижу обе строки.

 NSLog(@"The parsed pass: %@ and the user pass: %@ ",checkingParsedPassword, passwordMD5String);

но когда я пытаюсь сравнить, я получаю эти exc_bad_access при if условии

if([checkingParsedPassword isEqualToString:passwordMD5String]){
    NSLog(@"checked");
}

Ответы [ 2 ]

1 голос
/ 23 января 2012

Преобразованный пароль из md5 может быть не строкой UTF8, поэтому попробуйте преобразовать пароль md5 в строку типа

passwordMD5String=[NSString stringWithFormat:@"%@",passwordMD5String];

перед сравнением.

0 голосов
/ 23 января 2012

Вы вызываете -release и -autorelease для переменной tabbarController (которая по какой-то причине меняет имя в середине кода - вы пытались очистить его при публикации?).

...