add some diagnostics

git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@27107 72102866-910b-0410-8b05-ffd578937521
This commit is contained in:
rfm 2008-11-21 09:35:41 +00:00
parent 21fe9ddb3d
commit 75ae2d11d8
4 changed files with 21 additions and 8 deletions

View file

@ -1975,8 +1975,8 @@ static void retEncoder (DOContext *ctxt)
[self _sendOutRmc: ctxt.encoder type: METHOD_REQUEST]; [self _sendOutRmc: ctxt.encoder type: METHOD_REQUEST];
ctxt.encoder = nil; ctxt.encoder = nil;
NSDebugMLLog(@"NSConnection", @"Sent message (%s) to 0x%x", NSDebugMLLog(@"NSConnection", @"Sent message (%s) RMX %d to 0x%x",
GSNameFromSelector(sel), (uintptr_t)self); GSNameFromSelector(sel), ctxt.seq, (uintptr_t)self);
if (needsResponse == NO) if (needsResponse == NO)
{ {
@ -2100,7 +2100,8 @@ static void retEncoder (DOContext *ctxt)
} }
[self _sendOutRmc: op type: METHOD_REQUEST]; [self _sendOutRmc: op type: METHOD_REQUEST];
NSDebugMLLog(@"NSConnection", @"Sent message to 0x%x", (uintptr_t)self); NSDebugMLLog(@"NSConnection", @"Sent message %s RMC %d to 0x%x",
GSNameFromSelector([inv selector]), ctxt.seq, (uintptr_t)self);
if (needsResponse == NO) if (needsResponse == NO)
{ {
@ -2569,9 +2570,10 @@ static void callEncoder (DOContext *ctxt)
ctxt.type = forward_type; ctxt.type = forward_type;
if (debug_connection > 1) if (debug_connection > 1)
{ NSLog(
NSLog(@"Handling message from %@", (uintptr_t)self); @"Handling message (sig %s) RMC %d from %@",
} ctxt.type, ctxt.seq, (uintptr_t)self);
_reqInCount++; /* Handling an incoming request. */ _reqInCount++; /* Handling an incoming request. */
#if defined(USE_LIBFFI) #if defined(USE_LIBFFI)

View file

@ -315,7 +315,12 @@ callframe_do_call (DOContext *ctxt,
/* Make sure we successfully got the method type, and that its /* Make sure we successfully got the method type, and that its
types match the ENCODED_TYPES. */ types match the ENCODED_TYPES. */
NSCParameterAssert (type); NSCParameterAssert (type);
NSCParameterAssert (GSSelectorTypesMatch(encoded_types, type)); if (GSSelectorTypesMatch(encoded_types, type) == NO)
{
[NSException raise: NSInvalidArgumentException
format: @"callframe_do_call types (%s / %s) missmatch for %s",
encoded_types, type, GSNameFromSelector(selector)];
}
/* Build the cif frame */ /* Build the cif frame */
sig = [NSMethodSignature signatureWithObjCTypes: type]; sig = [NSMethodSignature signatureWithObjCTypes: type];

View file

@ -782,7 +782,12 @@ cifframe_do_call (DOContext *ctxt,
/* Make sure we successfully got the method type, and that its /* Make sure we successfully got the method type, and that its
types match the ENCODED_TYPES. */ types match the ENCODED_TYPES. */
NSCParameterAssert (type); NSCParameterAssert (type);
NSCParameterAssert (GSSelectorTypesMatch(encoded_types, type)); if (GSSelectorTypesMatch(encoded_types, type) == NO)
{
[NSException raise: NSInvalidArgumentException
format: @"cifframe_do_call types (%s / %s) missmatch for %s",
encoded_types, type, GSNameFromSelector(selector)];
}
/* Build the cif frame */ /* Build the cif frame */
sig = [NSMethodSignature signatureWithObjCTypes: type]; sig = [NSMethodSignature signatureWithObjCTypes: type];

View file

@ -605,6 +605,7 @@ ihandler(int sig)
name: NSConnectionDidDieNotification name: NSConnectionDidDieNotification
object: newConn]; object: newConn];
[newConn setDelegate: self]; [newConn setDelegate: self];
[newConn _enableKeepalive];
/* /*
* Create a new map table entry for this connection with a value that * Create a new map table entry for this connection with a value that
* is a table (normally with a single entry) containing registered * is a table (normally with a single entry) containing registered