diff options
author | Kenneth Russel <kbrussel@alum.mit.edu> | 2006-05-28 00:33:56 +0000 |
---|---|---|
committer | Kenneth Russel <kbrussel@alum.mit.edu> | 2006-05-28 00:33:56 +0000 |
commit | 1754f08ec0fb62ecd23f1ec3ec7c94da9a44de7a (patch) | |
tree | e221ab452ab74327f0fbaf3c84ed5640aef4fec5 /src/java/com/sun/gluegen/MethodBinding.java | |
parent | 623a3b5678a3ccea7b2c9ef2ee856146e2288f4c (diff) |
Fixed and improved handling of Opaque directives for multiple pointer
depths in particular to fix AGLPbuffer case supplied by Justin Couch.
Tested with builds on Windows, Linux and Mac OS X and AGL test case.
git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/gluegen/trunk@33 a78bb65f-1512-4460-ba86-f6dc96a7bf27
Diffstat (limited to 'src/java/com/sun/gluegen/MethodBinding.java')
-rw-r--r-- | src/java/com/sun/gluegen/MethodBinding.java | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/src/java/com/sun/gluegen/MethodBinding.java b/src/java/com/sun/gluegen/MethodBinding.java index b8ebb09..f8a4d2c 100644 --- a/src/java/com/sun/gluegen/MethodBinding.java +++ b/src/java/com/sun/gluegen/MethodBinding.java @@ -354,7 +354,10 @@ public class MethodBinding { } if (cArgType.isPointer()) { - if (cArgType.asPointer().getTargetType().isPrimitive()) { + // Handle both real C primitive pointers and any constructions + // due to opaque directives + if (cArgType.asPointer().getTargetType().isPrimitive() || + javaArgType.isCPrimitivePointerType()) { signatureUsesCPrimitivePointers = true; } else if (cArgType.asPointer().getTargetType().isVoid()) { signatureUsesCVoidPointers = true; |