--- mozilla/xpcom/reflect/xptcall/src/md/unix/xptcstubs_unixish_x86.cpp	Tue Apr 24 22:17:51 2001
+++ mozilla/xpcom/reflect/xptcall/src/md/unix/xptcstubs_unixish_x86.cpp.orig	Wed Mar 21 08:39:46 2001
@@ -95,11 +95,22 @@
   int temp0, temp1; \
   register nsresult result; \
   __asm__ __volatile__( \
+    "movl 0x04(%%ebp), %%ecx \n\t"\
+    "cmpl $0xaff0d, %%ecx \n\t" \
+    "jz 0f \n\t"\
     "leal   0x0c(%%ebp), %%ecx\n\t"    /* args */ \
     "pushl  %%ecx\n\t" \
     "pushl  $"#n"\n\t"                 /* method index */ \
     "movl   0x08(%%ebp), %%ecx\n\t"    /* this */ \
     "pushl  %%ecx\n\t" \
+    "jmp 1f \n\t" \
+    "0: \n\t" \
+    "leal   0x10(%%ebp), %%ecx\n\t"    /* args */ \
+    "pushl  %%ecx\n\t" \
+    "pushl  $"#n"\n\t"                 /* method index */ \
+    "movl   0x0c(%%ebp), %%ecx\n\t"    /* this */ \
+    "pushl  %%ecx\n\t" \
+    "1: \n\t" \
     "call   *%%edx\n\t"                /* PrepareAndDispatch */ \
     "addl   $12, %%esp" \
     : "=a" (result),    /* %0 */ \
@@ -141,3 +152,4 @@
 }
 
 #include "xptcstubsdef.inc"
+
