fix for 15507 15510
(add on)
This commit is contained in:
idk%eng.sun.com 2001-06-13 09:05:48 +00:00
Родитель e85398d1d2
Коммит 31f9d90de8
2 изменённых файлов: 11 добавлений и 5 удалений

Просмотреть файл

@ -153,9 +153,13 @@ NS_IMETHODIMP bcXPCOMProxy::CallMethod(PRUint16 methodIndex,
}
NS_IF_RELEASE(eventQ);
bcIUnMarshaler * unmarshaler = call->GetUnMarshaler();
mt->UnMarshal(unmarshaler);
nsresult result;
unmarshaler->ReadSimple(&result, bc_T_U32);
if (NS_SUCCEEDED(result)) {
mt->UnMarshal(unmarshaler);
}
delete call; delete marshaler; delete unmarshaler; delete mt;
return NS_OK;
return result;
}
nsrefcnt bcXPCOMProxy::AddRef(void) {

Просмотреть файл

@ -111,10 +111,12 @@ void bcXPCOMStub::DispatchAndSaveThread(bcICall *call, nsIEventQueue *eventQueue
stubsAndProxiesService->PushEventQueue(eventQueue);
//nb return value; excepion handling
PR_LOG(log, PR_LOG_DEBUG, ("--bcXPCOMStub::DispatchAndSaveThreade about to XPTC_InvokeByIndex\n"));
XPTC_InvokeByIndex(object, mid, paramCount, params);
nsresult result = XPTC_InvokeByIndex(object, mid, paramCount, params);
PR_LOG(log, PR_LOG_DEBUG, ("--bcXPCOMStub::DispatchAndSaveThreade after XPTC_InvokeByIndex\n"));
if (mt != NULL) { //nb to do what about nsresult ?
bcIMarshaler * m = call->GetMarshaler();
bcIMarshaler * m = call->GetMarshaler();
m->WriteSimple(&result, bc_T_U32);
if (NS_SUCCEEDED(result)
&& mt != NULL) {
PR_LOG(log, PR_LOG_DEBUG, ("--bcXPCOMStub::DispatchAndSaveThreade about to mt->Marshal\n"));
mt->Marshal(m);
delete m;