[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Dotgnu-pnet-commits] CVS: pnet/image marshal.c,1.7,1.8
From: |
Rhys Weatherley <address@hidden> |
Subject: |
[Dotgnu-pnet-commits] CVS: pnet/image marshal.c,1.7,1.8 |
Date: |
Thu, 30 Jan 2003 21:00:31 -0500 |
Update of /cvsroot/dotgnu-pnet/pnet/image
In directory subversions:/tmp/cvs-serv19621/image
Modified Files:
marshal.c
Log Message:
Put some of the support code in place for custom marshaling (doesn't work yet).
Index: marshal.c
===================================================================
RCS file: /cvsroot/dotgnu-pnet/pnet/image/marshal.c,v
retrieving revision 1.7
retrieving revision 1.8
diff -C2 -r1.7 -r1.8
*** marshal.c 28 Jan 2003 06:25:01 -0000 1.7
--- marshal.c 31 Jan 2003 02:00:29 -0000 1.8
***************
*** 66,70 ****
ILUInt32 ILPInvokeGetMarshalType(ILPInvoke *pinvoke, ILMethod *method,
! unsigned long
param)
{
ILType *type = ILTypeGetParam(method->member.signature, param);
--- 66,71 ----
ILUInt32 ILPInvokeGetMarshalType(ILPInvoke *pinvoke, ILMethod *method,
! unsigned long
param, char **customName,
! int
*customNameLen)
{
ILType *type = ILTypeGetParam(method->member.signature, param);
***************
*** 100,103 ****
--- 101,108 ----
}
+ /* Initialize the custom name return information to nothing */
+ *customName = 0;
+ *customNameLen = 0;
+
/* If the native type is "interface", then always marshal directly.
This is normally used to force strings, delegates, and arrays
***************
*** 106,109 ****
--- 111,121 ----
{
return IL_META_MARSHAL_DIRECT;
+ }
+
+ /* Check for custom marshalling */
+ if(nativeTypeCode == IL_META_NATIVETYPE_CUSTOMMARSHALER &&
+ ILTypeIsReference(type))
+ {
+ return IL_META_MARSHAL_CUSTOM;
}
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Dotgnu-pnet-commits] CVS: pnet/image marshal.c,1.7,1.8,
Rhys Weatherley <address@hidden> <=
- Prev by Date:
[Dotgnu-pnet-commits] CVS: pnet/include il_meta.h,1.7,1.8 il_program.h,1.32,1.33
- Next by Date:
[Dotgnu-pnet-commits] CVS: pnet/engine custom.c,NONE,1.1 Makefile.am,1.53,1.54 cvm.h,1.38,1.39 cvm_conv.c,1.24,1.25 cvm_dasm.c,1.44,1.45 cvmc_setup.c,1.28,1.29 engine.h,1.66,1.67 pinvoke.c,1.17,1.18
- Previous by thread:
[Dotgnu-pnet-commits] CVS: pnet/include il_meta.h,1.7,1.8 il_program.h,1.32,1.33
- Next by thread:
[Dotgnu-pnet-commits] CVS: pnet/engine custom.c,NONE,1.1 Makefile.am,1.53,1.54 cvm.h,1.38,1.39 cvm_conv.c,1.24,1.25 cvm_dasm.c,1.44,1.45 cvmc_setup.c,1.28,1.29 engine.h,1.66,1.67 pinvoke.c,1.17,1.18
- Index(es):