blob: 4c5f61f88e4f7778c21bdd3db53d3317c447dfcb (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
|
WIP:
- Protected access for Impl classes
Random, somewhat old to-do list:
- Non-const array types must be properly released with JNI_COMMIT in
order to see side effects if the array was copied.
- figure out how to deal with WGL entry points:
WINGDIAPI HGLRC WINAPI wglCreateLayerContext(HDC, int);
WINGDIAPI BOOL WINAPI wglUseFontBitmapsA(HDC, DWORD, DWORD, DWORD);
WINGDIAPI BOOL WINAPI wglUseFontBitmapsW(HDC, DWORD, DWORD, DWORD);
see commented-out section in make/stub_includes/win32/wingdi.h
- Need a disciplined mechanism for converting char* argument types. For
example, many C functions accept a "char*" argument with the semantic that
output data will be written into the buffer pointed to by the
argument. The type "const char*" is used when the argument's data will be
unchanged. Our system needs a new directive, such as
"ArgumentIsStringBuffer" to be used for type conversion in those cases
where the native code needs to write output into the "char*" argument. Not
sure how to handle this on the native side -- it may require hints to the
native code generator as to how large the StringBuffer's backing buffer
needs to be, so we can assert this condition before passing the backing
buffer to the C function we are wrapping.
- Throw an exception if native calls to GetPrimitiveArrayCritical
return null.
|