mirror of
https://github.com/gnustep/libs-base.git
synced 2025-05-30 16:30:41 +00:00
Attempted fix for systems where sizeof(int) < sizeof(void*)
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@21770 72102866-910b-0410-8b05-ffd578937521
This commit is contained in:
parent
839793e442
commit
32da350755
7 changed files with 43 additions and 28 deletions
10
ChangeLog
10
ChangeLog
|
@ -1,3 +1,13 @@
|
||||||
|
2005-10-04 Richard Frith-Macdonald <rfm@gnu.org>
|
||||||
|
|
||||||
|
* Source/GSTcpPort.m:
|
||||||
|
* Source/NSCallBacks.m:
|
||||||
|
* Source/NSMessagePort.m:
|
||||||
|
* Source/NSMessagePortNameServer.m:
|
||||||
|
* Source/NSSocketPort.m:
|
||||||
|
* Source/win32/GSRunLoopCtxt.m:
|
||||||
|
Attempt to deal with systems where sizeof(int) < sizeof(void*)
|
||||||
|
|
||||||
2005-10-01 David Ayers <d.ayers@inode.at>
|
2005-10-01 David Ayers <d.ayers@inode.at>
|
||||||
|
|
||||||
* Source/NSString: (dataUsingEncoding:allowLossyConversion:):
|
* Source/NSString: (dataUsingEncoding:allowLossyConversion:):
|
||||||
|
|
|
@ -1596,7 +1596,7 @@ static unsigned wordAlign;
|
||||||
- (void) getFds: (SOCKET*)fds count: (int*)count
|
- (void) getFds: (SOCKET*)fds count: (int*)count
|
||||||
{
|
{
|
||||||
NSMapEnumerator me;
|
NSMapEnumerator me;
|
||||||
SOCKET sock;
|
void *sock;
|
||||||
GSTcpHandle *handle;
|
GSTcpHandle *handle;
|
||||||
id recvSelf;
|
id recvSelf;
|
||||||
|
|
||||||
|
@ -1623,11 +1623,11 @@ static unsigned wordAlign;
|
||||||
*/
|
*/
|
||||||
recvSelf = GS_GC_HIDE(self);
|
recvSelf = GS_GC_HIDE(self);
|
||||||
me = NSEnumerateMapTable(handles);
|
me = NSEnumerateMapTable(handles);
|
||||||
while (NSNextMapEnumeratorPair(&me, (void*)&sock, (void*)&handle))
|
while (NSNextMapEnumeratorPair(&me, &sock, (void**)&handle))
|
||||||
{
|
{
|
||||||
if (handle->recvPort == recvSelf)
|
if (handle->recvPort == recvSelf)
|
||||||
{
|
{
|
||||||
fds[(*count)++] = sock;
|
fds[(*count)++] = (SOCKET)sock;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
NSEndMapTableEnumeration(&me);
|
NSEndMapTableEnumeration(&me);
|
||||||
|
@ -1638,6 +1638,7 @@ static unsigned wordAlign;
|
||||||
{
|
{
|
||||||
NSMapEnumerator me;
|
NSMapEnumerator me;
|
||||||
SOCKET sock;
|
SOCKET sock;
|
||||||
|
void *dummy;
|
||||||
#ifndef BROKEN_SO_REUSEADDR
|
#ifndef BROKEN_SO_REUSEADDR
|
||||||
int opt = 1;
|
int opt = 1;
|
||||||
#endif
|
#endif
|
||||||
|
@ -1648,7 +1649,7 @@ static unsigned wordAlign;
|
||||||
* Enumerate all our socket handles, and look for one with port.
|
* Enumerate all our socket handles, and look for one with port.
|
||||||
*/
|
*/
|
||||||
me = NSEnumerateMapTable(handles);
|
me = NSEnumerateMapTable(handles);
|
||||||
while (NSNextMapEnumeratorPair(&me, (void*)&sock, (void*)&handle))
|
while (NSNextMapEnumeratorPair(&me, &dummy, (void**)&handle))
|
||||||
{
|
{
|
||||||
if ([handle recvPort] == recvPort)
|
if ([handle recvPort] == recvPort)
|
||||||
{
|
{
|
||||||
|
@ -1663,7 +1664,8 @@ static unsigned wordAlign;
|
||||||
* Not found ... create a new handle.
|
* Not found ... create a new handle.
|
||||||
*/
|
*/
|
||||||
handle = nil;
|
handle = nil;
|
||||||
if ((sock = socket(AF_INET, SOCK_STREAM, PF_UNSPEC)) == INVALID_SOCKET)
|
sock = socket(AF_INET, SOCK_STREAM, PF_UNSPEC);
|
||||||
|
if (sock == INVALID_SOCKET)
|
||||||
{
|
{
|
||||||
NSLog(@"unable to create socket - %s", GSLastErrorStr(errno));
|
NSLog(@"unable to create socket - %s", GSLastErrorStr(errno));
|
||||||
}
|
}
|
||||||
|
|
|
@ -67,7 +67,7 @@ _NS_int_release(void *table, void* i)
|
||||||
NSString *
|
NSString *
|
||||||
_NS_int_describe(void *table, void* i)
|
_NS_int_describe(void *table, void* i)
|
||||||
{
|
{
|
||||||
return [NSString stringWithFormat: @"%d", i];
|
return [NSString stringWithFormat: @"%d", (int)i];
|
||||||
}
|
}
|
||||||
|
|
||||||
/** For owned `void *' **/
|
/** For owned `void *' **/
|
||||||
|
|
|
@ -1150,7 +1150,7 @@ static Class messagePortClass;
|
||||||
static void clean_up_sockets(void)
|
static void clean_up_sockets(void)
|
||||||
{
|
{
|
||||||
NSMessagePort *port;
|
NSMessagePort *port;
|
||||||
NSData *name;
|
NSData *name;
|
||||||
NSMapEnumerator mEnum;
|
NSMapEnumerator mEnum;
|
||||||
BOOL unknownThread = GSRegisterCurrentThread();
|
BOOL unknownThread = GSRegisterCurrentThread();
|
||||||
CREATE_AUTORELEASE_POOL(arp);
|
CREATE_AUTORELEASE_POOL(arp);
|
||||||
|
@ -1385,8 +1385,8 @@ static int unique_index = 0;
|
||||||
- (void) getFds: (int*)fds count: (int*)count
|
- (void) getFds: (int*)fds count: (int*)count
|
||||||
{
|
{
|
||||||
NSMapEnumerator me;
|
NSMapEnumerator me;
|
||||||
int sock;
|
void *sock;
|
||||||
GSMessageHandle *handle;
|
GSMessageHandle *handle;
|
||||||
id recvSelf;
|
id recvSelf;
|
||||||
|
|
||||||
M_LOCK(myLock);
|
M_LOCK(myLock);
|
||||||
|
@ -1412,11 +1412,11 @@ static int unique_index = 0;
|
||||||
*/
|
*/
|
||||||
recvSelf = GS_GC_HIDE(self);
|
recvSelf = GS_GC_HIDE(self);
|
||||||
me = NSEnumerateMapTable(handles);
|
me = NSEnumerateMapTable(handles);
|
||||||
while (NSNextMapEnumeratorPair(&me, (void*)&sock, (void*)&handle))
|
while (NSNextMapEnumeratorPair(&me, &sock, (void**)&handle))
|
||||||
{
|
{
|
||||||
if (handle->recvPort == recvSelf)
|
if (handle->recvPort == recvSelf)
|
||||||
{
|
{
|
||||||
fds[(*count)++] = sock;
|
fds[(*count)++] = (int)sock;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
NSEndMapTableEnumeration(&me);
|
NSEndMapTableEnumeration(&me);
|
||||||
|
@ -1426,7 +1426,7 @@ static int unique_index = 0;
|
||||||
- (id) conversation: (NSPort*)recvPort
|
- (id) conversation: (NSPort*)recvPort
|
||||||
{
|
{
|
||||||
NSMapEnumerator me;
|
NSMapEnumerator me;
|
||||||
int sock;
|
void *dummy;
|
||||||
GSMessageHandle *handle = nil;
|
GSMessageHandle *handle = nil;
|
||||||
|
|
||||||
M_LOCK(myLock);
|
M_LOCK(myLock);
|
||||||
|
@ -1434,7 +1434,7 @@ static int unique_index = 0;
|
||||||
* Enumerate all our socket handles, and look for one with port.
|
* Enumerate all our socket handles, and look for one with port.
|
||||||
*/
|
*/
|
||||||
me = NSEnumerateMapTable(handles);
|
me = NSEnumerateMapTable(handles);
|
||||||
while (NSNextMapEnumeratorPair(&me, (void*)&sock, (void*)&handle))
|
while (NSNextMapEnumeratorPair(&me, &dummy, (void**)&handle))
|
||||||
{
|
{
|
||||||
if ([handle recvPort] == recvPort)
|
if ([handle recvPort] == recvPort)
|
||||||
{
|
{
|
||||||
|
@ -1454,6 +1454,7 @@ static int unique_index = 0;
|
||||||
{
|
{
|
||||||
NSMapEnumerator me;
|
NSMapEnumerator me;
|
||||||
int sock;
|
int sock;
|
||||||
|
void *dummy;
|
||||||
#ifndef BROKEN_SO_REUSEADDR
|
#ifndef BROKEN_SO_REUSEADDR
|
||||||
int opt = 1;
|
int opt = 1;
|
||||||
#endif
|
#endif
|
||||||
|
@ -1464,7 +1465,7 @@ static int unique_index = 0;
|
||||||
* Enumerate all our socket handles, and look for one with port.
|
* Enumerate all our socket handles, and look for one with port.
|
||||||
*/
|
*/
|
||||||
me = NSEnumerateMapTable(handles);
|
me = NSEnumerateMapTable(handles);
|
||||||
while (NSNextMapEnumeratorPair(&me, (void*)&sock, (void*)&handle))
|
while (NSNextMapEnumeratorPair(&me, &dummy, (void**)&handle))
|
||||||
{
|
{
|
||||||
if ([handle recvPort] == recvPort)
|
if ([handle recvPort] == recvPort)
|
||||||
{
|
{
|
||||||
|
@ -1479,7 +1480,8 @@ static int unique_index = 0;
|
||||||
* Not found ... create a new handle.
|
* Not found ... create a new handle.
|
||||||
*/
|
*/
|
||||||
handle = nil;
|
handle = nil;
|
||||||
if ((sock = socket(PF_LOCAL, SOCK_STREAM, PF_UNSPEC)) < 0)
|
sock = socket(PF_LOCAL, SOCK_STREAM, PF_UNSPEC);
|
||||||
|
if (sock < 0)
|
||||||
{
|
{
|
||||||
NSLog(@"unable to create socket - %s", GSLastErrorStr(errno));
|
NSLog(@"unable to create socket - %s", GSLastErrorStr(errno));
|
||||||
}
|
}
|
||||||
|
|
|
@ -80,8 +80,8 @@ static NSMapTable portToNamesMap;
|
||||||
static void clean_up_names(void)
|
static void clean_up_names(void)
|
||||||
{
|
{
|
||||||
NSMapEnumerator mEnum;
|
NSMapEnumerator mEnum;
|
||||||
NSMessagePort *port;
|
NSMessagePort *port;
|
||||||
NSString *name;
|
NSString *name;
|
||||||
BOOL unknownThread = GSRegisterCurrentThread();
|
BOOL unknownThread = GSRegisterCurrentThread();
|
||||||
CREATE_AUTORELEASE_POOL(arp);
|
CREATE_AUTORELEASE_POOL(arp);
|
||||||
|
|
||||||
|
|
|
@ -1794,7 +1794,7 @@ static unsigned wordAlign;
|
||||||
- (void) getFds: (int*)fds count: (int*)count
|
- (void) getFds: (int*)fds count: (int*)count
|
||||||
{
|
{
|
||||||
NSMapEnumerator me;
|
NSMapEnumerator me;
|
||||||
WSAEVENT event;
|
void *event;
|
||||||
SOCKET fd;
|
SOCKET fd;
|
||||||
GSTcpHandle *handle;
|
GSTcpHandle *handle;
|
||||||
id recvSelf;
|
id recvSelf;
|
||||||
|
@ -1822,7 +1822,7 @@ static unsigned wordAlign;
|
||||||
*/
|
*/
|
||||||
recvSelf = GS_GC_HIDE(self);
|
recvSelf = GS_GC_HIDE(self);
|
||||||
me = NSEnumerateMapTable(events);
|
me = NSEnumerateMapTable(events);
|
||||||
while (NSNextMapEnumeratorPair(&me, (void*)&event, (void*)&fd))
|
while (NSNextMapEnumeratorPair(&me, &event, (void**)&fd))
|
||||||
{
|
{
|
||||||
handle = (GSTcpHandle*)NSMapGet(handles, (void*)(gsaddr)fd);
|
handle = (GSTcpHandle*)NSMapGet(handles, (void*)(gsaddr)fd);
|
||||||
if (handle->recvPort == recvSelf && handle->inReplyMode == NO)
|
if (handle->recvPort == recvSelf && handle->inReplyMode == NO)
|
||||||
|
@ -1837,7 +1837,7 @@ static unsigned wordAlign;
|
||||||
- (void) getFds: (int*)fds count: (int*)count
|
- (void) getFds: (int*)fds count: (int*)count
|
||||||
{
|
{
|
||||||
NSMapEnumerator me;
|
NSMapEnumerator me;
|
||||||
SOCKET sock;
|
void *sock;
|
||||||
GSTcpHandle *handle;
|
GSTcpHandle *handle;
|
||||||
id recvSelf;
|
id recvSelf;
|
||||||
|
|
||||||
|
@ -1864,11 +1864,11 @@ static unsigned wordAlign;
|
||||||
*/
|
*/
|
||||||
recvSelf = GS_GC_HIDE(self);
|
recvSelf = GS_GC_HIDE(self);
|
||||||
me = NSEnumerateMapTable(handles);
|
me = NSEnumerateMapTable(handles);
|
||||||
while (NSNextMapEnumeratorPair(&me, (void*)&sock, (void*)&handle))
|
while (NSNextMapEnumeratorPair(&me, &sock, (void**)&handle))
|
||||||
{
|
{
|
||||||
if (handle->recvPort == recvSelf)
|
if (handle->recvPort == recvSelf)
|
||||||
{
|
{
|
||||||
fds[(*count)++] = sock;
|
fds[(*count)++] = (SOCKET)sock;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
NSEndMapTableEnumeration(&me);
|
NSEndMapTableEnumeration(&me);
|
||||||
|
@ -1879,7 +1879,7 @@ static unsigned wordAlign;
|
||||||
- (id) conversation: (NSPort*)recvPort
|
- (id) conversation: (NSPort*)recvPort
|
||||||
{
|
{
|
||||||
NSMapEnumerator me;
|
NSMapEnumerator me;
|
||||||
SOCKET sock;
|
void *dummy;
|
||||||
GSTcpHandle *handle = nil;
|
GSTcpHandle *handle = nil;
|
||||||
|
|
||||||
M_LOCK(myLock);
|
M_LOCK(myLock);
|
||||||
|
@ -1887,7 +1887,7 @@ static unsigned wordAlign;
|
||||||
* Enumerate all our socket handles, and look for one with port.
|
* Enumerate all our socket handles, and look for one with port.
|
||||||
*/
|
*/
|
||||||
me = NSEnumerateMapTable(handles);
|
me = NSEnumerateMapTable(handles);
|
||||||
while (NSNextMapEnumeratorPair(&me, (void*)&sock, (void*)&handle))
|
while (NSNextMapEnumeratorPair(&me, &dummy, (void**)&handle))
|
||||||
{
|
{
|
||||||
if ([handle recvPort] == recvPort)
|
if ([handle recvPort] == recvPort)
|
||||||
{
|
{
|
||||||
|
@ -1907,6 +1907,7 @@ static unsigned wordAlign;
|
||||||
{
|
{
|
||||||
NSMapEnumerator me;
|
NSMapEnumerator me;
|
||||||
SOCKET sock;
|
SOCKET sock;
|
||||||
|
void *dummy;
|
||||||
#ifndef BROKEN_SO_REUSEADDR
|
#ifndef BROKEN_SO_REUSEADDR
|
||||||
int opt = 1;
|
int opt = 1;
|
||||||
#endif
|
#endif
|
||||||
|
@ -1917,7 +1918,7 @@ static unsigned wordAlign;
|
||||||
* Enumerate all our socket handles, and look for one with port.
|
* Enumerate all our socket handles, and look for one with port.
|
||||||
*/
|
*/
|
||||||
me = NSEnumerateMapTable(handles);
|
me = NSEnumerateMapTable(handles);
|
||||||
while (NSNextMapEnumeratorPair(&me, (void*)&sock, (void*)&handle))
|
while (NSNextMapEnumeratorPair(&me, &dummy, (void**)&handle))
|
||||||
{
|
{
|
||||||
if ([handle recvPort] == recvPort)
|
if ([handle recvPort] == recvPort)
|
||||||
{
|
{
|
||||||
|
|
|
@ -135,7 +135,7 @@ static const NSMapTableValueCallBacks WatcherMapValueCallBacks =
|
||||||
HANDLE *handleArray;
|
HANDLE *handleArray;
|
||||||
int num_handles;
|
int num_handles;
|
||||||
unsigned i;
|
unsigned i;
|
||||||
HANDLE handle;
|
void *handle;
|
||||||
int wait_timeout;
|
int wait_timeout;
|
||||||
DWORD wait_return;
|
DWORD wait_return;
|
||||||
BOOL do_wait;
|
BOOL do_wait;
|
||||||
|
@ -215,9 +215,9 @@ static const NSMapTableValueCallBacks WatcherMapValueCallBacks =
|
||||||
hEnum = NSEnumerateMapTable(handleMap);
|
hEnum = NSEnumerateMapTable(handleMap);
|
||||||
|
|
||||||
i = 0;
|
i = 0;
|
||||||
while (NSNextMapEnumeratorPair(&hEnum, (void**)&handle, (void**)&watcher))
|
while (NSNextMapEnumeratorPair(&hEnum, &handle, (void**)&watcher))
|
||||||
{
|
{
|
||||||
handleArray[i++] = handle;
|
handleArray[i++] = (HANDLE)handle;
|
||||||
}
|
}
|
||||||
|
|
||||||
do_wait = YES;
|
do_wait = YES;
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue