diff --git a/Source/NSString.m b/Source/NSString.m index cb3838109..d706fa787 100644 --- a/Source/NSString.m +++ b/Source/NSString.m @@ -1400,7 +1400,7 @@ else { NSRange range; range = [self rangeOfString:aString options:NSBackwardsSearch]; - return (range.location == ([self length] - [aString length])) ? YES : NO; + return (range.length > 0 && range.location == ([self length] - [aString length])) ? YES : NO; } - (BOOL) isEqual: (id)anObject diff --git a/Source/UnixFileHandle.m b/Source/UnixFileHandle.m index 4c3fe3211..bed4e146c 100644 --- a/Source/UnixFileHandle.m +++ b/Source/UnixFileHandle.m @@ -1158,7 +1158,7 @@ getAddr(NSString* name, NSString* svc, NSString* pcl, struct sockaddr_in *sin) int size = sizeof(sin); h = [[UnixFileHandle alloc] initWithFileDescriptor:desc]; - getsockname(desc, (struct sockaddr*)&sin, &size); + getpeername(desc, (struct sockaddr*)&sin, &size); [h setAddr: &sin]; [readInfo setObject: h forKey: NSFileHandleNotificationFileHandleItem]; [h release];