Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
bingbingbingbing
mono
提交
d2fcb23b
M
mono
项目概览
bingbingbingbing
/
mono
与 Fork 源项目一致
从无法访问的项目Fork
通知
35
Star
0
Fork
1
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
M
mono
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
前往新版Gitcode,体验更适合开发者的 AI 搜索 >>
未验证
提交
d2fcb23b
编写于
9月 28, 2020
作者:
A
Alex Thibodeau
提交者:
GitHub
9月 28, 2020
浏览文件
操作
浏览文件
下载
差异文件
Merge pull request #1342 from Unity-Technologies/unity-master-fix-1274470
Unity master fix case 1274470
上级
a0defb57
6a9232ad
变更
3
隐藏空白更改
内联
并排
Showing
3 changed file
with
26 addition
and
3 deletion
+26
-3
mono/metadata/marshal.c
mono/metadata/marshal.c
+5
-3
mono/tests/libtest.c
mono/tests/libtest.c
+9
-0
mono/tests/pinvoke2.cs
mono/tests/pinvoke2.cs
+12
-0
未找到文件。
mono/metadata/marshal.c
浏览文件 @
d2fcb23b
...
@@ -6833,10 +6833,12 @@ emit_marshal_array (EmitMarshalContext *m, int argnum, MonoType *t,
...
@@ -6833,10 +6833,12 @@ emit_marshal_array (EmitMarshalContext *m, int argnum, MonoType *t,
mono_mb_emit_ldloc
(
mb
,
conv_arg
);
mono_mb_emit_ldloc
(
mb
,
conv_arg
);
break
;
break
;
case
MARSHAL_ACTION_CONV_RESULT
:
case
MARSHAL_ACTION_CONV_RESULT
:
{
/* fixme: we need conversions here */
mono_mb_emit_byte
(
mb
,
CEE_POP
);
mono_mb_emit_stloc
(
mb
,
3
);
char
*
msg
=
g_strdup_printf
(
"Cannot marshal 'return value': Invalid managed/unmanaged type combination."
);
mono_mb_emit_exception_marshal_directive
(
mb
,
msg
);
break
;
break
;
}
case
MARSHAL_ACTION_MANAGED_CONV_IN
:
{
case
MARSHAL_ACTION_MANAGED_CONV_IN
:
{
MonoClass
*
eklass
;
MonoClass
*
eklass
;
...
...
mono/tests/libtest.c
浏览文件 @
d2fcb23b
...
@@ -7556,3 +7556,12 @@ mono_test_native_to_managed_exception_rethrow (NativeToManagedExceptionRethrowFu
...
@@ -7556,3 +7556,12 @@ mono_test_native_to_managed_exception_rethrow (NativeToManagedExceptionRethrowFu
pthread_join
(
t
,
NULL
);
pthread_join
(
t
,
NULL
);
}
}
#endif
#endif
static
guint8
static_arr
[]
=
{
1
,
2
,
3
,
4
};
LIBTEST_API
guint8
*
mono_test_marshal_return_array
(
void
)
{
return
static_arr
;
}
mono/tests/pinvoke2.cs
浏览文件 @
d2fcb23b
...
@@ -1987,5 +1987,17 @@ public unsafe class Tests {
...
@@ -1987,5 +1987,17 @@ public unsafe class Tests {
return
2
;
return
2
;
return
0
;
return
0
;
}
}
[
DllImport
(
"libtest"
,
EntryPoint
=
"mono_test_marshal_return_array"
)]
public
static
extern
int
[]
mono_test_marshal_return_array
();
public
static
int
test_0_return_array
()
{
try
{
var
arr
=
mono_test_marshal_return_array
();
return
1
;
}
catch
(
MarshalDirectiveException
)
{
return
0
;
}
}
}
}
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录