diff options
-rw-r--r-- | AppKit/GTMCarbonEvent.m | 4 | ||||
-rw-r--r-- | Foundation/GTMFourCharCodeTest.m | 14 |
2 files changed, 11 insertions, 7 deletions
diff --git a/AppKit/GTMCarbonEvent.m b/AppKit/GTMCarbonEvent.m index a0fd6ef..a2cf3f9 100644 --- a/AppKit/GTMCarbonEvent.m +++ b/AppKit/GTMCarbonEvent.m @@ -157,7 +157,9 @@ // description utliity for debugging // - (NSString *)description { - char cls[5]; + // Use 8 bytes because stack protection gives us a warning if we use a + // smaller buffer. + char cls[8]; UInt32 kind; // Need everything bigendian if we are printing out the class as a "string" diff --git a/Foundation/GTMFourCharCodeTest.m b/Foundation/GTMFourCharCodeTest.m index 2197f35..1799629 100644 --- a/Foundation/GTMFourCharCodeTest.m +++ b/Foundation/GTMFourCharCodeTest.m @@ -36,17 +36,19 @@ static const FourCharCode kGTMHighMacOSRomanCode = 0xA5A8A9AA; // '•®©™' // 3.2.5 where in release mode it doesn't like some string constants // that include high or low ascii using the @"blah" string style. // So we build them by hand. - char string[] = { 0, 0, 0, 1 }; - lowAsciiString_ = [[NSString alloc] initWithBytes:string - length:sizeof(string) + // Use 8 bytes instead of 4, because stack protection gives us a warning + // if we have a buffer smaller than 8 bytes. + char string[8] = { 0, 0, 0, 1, 0, 0, 0, 0 }; + lowAsciiString_ = [[NSString alloc] initWithBytes:string + length:4 encoding:NSASCIIStringEncoding]; - + // Must make sure our bytes are in the right order for building strings with, // otherwise the string comes out in the wrong order on low-endian systems. FourCharCode orderedString = htonl(kGTMHighMacOSRomanCode); - highMacOSRomanString_ + highMacOSRomanString_ = [[NSString alloc] initWithBytes:&orderedString - length:sizeof(orderedString) + length:sizeof(orderedString) encoding:NSMacOSRomanStringEncoding]; } |