On Mon, Feb 13, 2012 at 9:04 AM, Chris Paveglio <chris_paveg...@yahoo.com> wrote: > I'm having an issue with the percent character being displayed as random > numbers in an NSAlertPanel (modal). My app has an ivar, "fullString", > including the usual property/synthesize getters and setters, there is nothing > special about it. fullString is bound to an NSTextField where a user might > type "10% off all shoes", or put some text that contains dollar signs or > percent signs. Later another method will validate if it's a web address or > plain text and display an alert if it's not a web address. At this point I > use the usual -stringWithFormat and put the "fullString" text in with some > other descriptive text. But if fullString contains a percent character, then > the NSAlert displays something like "10254458745ff all shoes". Why is the > percent character being turned into some numbers, and it also seems to lop > off the space and letter o as well? Using ampersand, dollar sign, and number > symbol all display properly.
NSAlert takes a format string. Therefore you must take care to never ever pass user input as part of the format string. NSString *fullString = managedObj.fullString; NSString *informativeText = [NSString stringWithFormat:@"The fullString %@ is invalid.", fullString]; NSAlert *alert = [NSAlert alertWithMessageText:… informativeTextWithFormat:@"%@", informativeText]; Note the use of "%@" as the format argument. --Kyle Sluder _______________________________________________ Cocoa-dev mailing list (Cocoa-dev@lists.apple.com) Please do not post admin requests or moderator comments to the list. Contact the moderators at cocoa-dev-admins(at)lists.apple.com Help/Unsubscribe/Update your Subscription: https://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com This email sent to arch...@mail-archive.com