commit 3ed74abaddb90cb537897b9928e923be50f7f99f Author: Sven Gothel Date: Fri Nov 1 12:40:35 2013 +0100 GLRendererQuirks: Add GLSharedContextBuggy ('Mesa Intel 9.2.1' and 'Hisilicon Immersion.16') Note: Even though Mesa Intel driver crashes w/ heavy multithreading (Bug 873), it works well w/ our multithreaded GLMediaPlayer. commit f4574bf6846f2084f6a403552f7be6e845107c73 Author: Sven Gothel Date: Fri Nov 1 12:38:54 2013 +0100 Bug 885 - GLMediaPlayer: Allow single threaded mode - Especially where multiple media textures (Android) or shared GL context are not usable. - GLMediaPlayer: - TEXTURE_COUNT_MIN is the new minimum: '1' - i.e. no multithreading, single threaded player - TEXTURE_COUNT_DEFAULT is '4' - multithreaded - GLMediaPlayerImpl: - Add Single threaded mode, but perform initStreamImpl(..) off-thread. - commit 33db4580da46ba21771499fdf50489e60294e439 Author: Sven Gothel Date: Fri Nov 1 05:55:27 2013 +0100 Bug 852: Add unit test TestCPUSourcingAPINEWT validating CPU sourcing, i.e. expecting exception w/ core profile! commit 10b2f2219306746f3a3af6043717f42ae32c31e3 Author: Sven Gothel Date: Fri Nov 1 05:24:23 2013 +0100 Clarify Bug 692: Unbinding a VAO does _not_ imply unbinding of set VBOs (spec doesn't mention it, and it does not show results w/ CPU sourced rendering) ; Clean up GLBuffer*Tracker + * Note that VAO initialization does unbind the VBO .. since otherwise they are still bound + * and the CPU_SRC test will fail!
+ * The OpenGL spec does not mention that unbinding a VAO will also unbind the bound VBOs + * during their setup.
+ * Local tests here on NV and AMD proprietary driver resulted in no ourput image + * when not unbinding said VBOs before the CPU_SRC tests.
+ * Hence Bug 692 Comment 5 is invalid, i.e. , + * and we should throw an exception to give users a hint! Leaving uncommented code in GLBufferStateTracker .. +++ - Clean up GLBuffer*Tracker - Use final - Use static final keyNotFound value. commit 4d5c62620eb93d9e43ea852960da50d548684429 Author: Sven Gothel Date: Fri Nov 1 01:27:27 2013 +0100 Bug 881 - Add 'Application-Name' in Jar's manifest to avoid Java6 NPEs .. commit 85878162940067b39b17c71878446dff0759040d Author: Sven Gothel Date: Fri Nov 1 01:25:32 2013 +0100 Bug 882 - Crash on OSX when closing NEWT window - Fix: Release NewtMacWindow manually in close0() Release NewtMacWindow manually in close0() - Mark [NewtMacWindow setReleasedWhenClosed: NO] in init0(..) - Release NewtMacWindow manually in close0(..) Check pointer args in close0(..) commit cc57413180edc4e5102f6729ccca6c4695d93e42 Author: Sven Gothel Date: Fri Nov 1 01:03:39 2013 +0100 Bug 882 - Crash on OSX when closing NEWT window - Check JavaVM and JNIEnv handles before usage in NewtMacWindow (Not the culprit .. but more safe) commit b0fa7977b154284334285daa642e114d7c9fca46 Author: Sven Gothel Date: Thu Oct 31 13:59:25 2013 +0100 EGLDrawableFactory.createDummySurfaceImpl: fix caps to pbuffer - since we do use EGLDummyUpstreamSurfaceHook .. a pbuffer offscreen fixOffscreenBitOnly(..) may yield FBO queries / chosing .. usually doesn't matter (on devices here), but not accurate. commit bde835213c584393d4be4ec7da62e7efd49430b7 Author: Sven Gothel Date: Thu Oct 31 13:12:10 2013 +0100 GLDrawableFactory: createDummy*(..) Pass GLCapabilitiesImmutable + GLCapabilitiesChooser instead of GLProfile, allowing using same or similar caps - important for sharing ctx commit 93ec063abaf2d1ff7a4947a4f9732635e0a99316 Author: Sven Gothel Date: Thu Oct 31 11:26:53 2013 +0100 TestBinary16NOUI: Remove hardship from test node - Disable 'verbose' avoids 'out of memory' and saves most of the time; Also run test exclusively. commit 5a44ec09918702fe95b65e67bd448cc171b9e8dd Author: Sven Gothel Date: Thu Oct 31 10:47:23 2013 +0100 AndroidGLMediaPlayerAPI14: Avoid possible NPEs commit b57ce5454ddeb7dd4b7c010c5df54faa6e8d951a Author: Sven Gothel Date: Thu Oct 31 10:46:47 2013 +0100 Bug 754 - Remove Ubuntu fonts from jogl-all.jar, provide it separately to reduce footprint for the masses. Remove the ubuntu fonts from atomic/jogl-util-graph.jar and hence all derivated 'all' JAR files. The Android jar files still contain the fonts as assets! atomic/jogl-util-graph-fonts-p0.jar contains the fonts and is either referenced by: - UbuntuFontLoader: Using class based Jar URI derivation using TempJarCache to [down]load and extract the jar file (similar to native lib-loading). - Explicitly via traditional classpath, see jnlp-files/jogl-applet-runner-newt-GraphTextDemo01b-napplet.html The pack200 jogl-all.jar file is now below 1MB commit 887dbdb34d71a3a266b7854bc9a3842aad1032f9 Author: Sven Gothel Date: Thu Oct 31 04:34:28 2013 +0100 Fix Bug 878 - JAWTWindow's HierarchyListener doesn't set component visible (again) on 'addNotify(..)' - GLCanvas in JtabbedPane disappear Regression of commit e33e6374e0be0454f7e9732b5f897f84dbc3c4dc (Fix for Bug 729 and Bug 849) ! +++ JAWTWindow's HierarchyListener doesn't set component visible (again) on 'addNotify(..)' It only renders the component invisible after removeNotify() which is performed implicit anyways .. Case java.awt.event.HierarchyEvent.DISPLAYABILITY_CHANGED shall perform similar as our java.awt.event.HierarchyEvent.SHOWING_CHANGED impl. +++ Tested on Gnu/Linux X11 and OSX incl. re-test Bug 729 and Bug 849 unit tests. commit 24485ead77a368ae3b77108248e067ad1f44ef0a Author: Sven Gothel Date: Thu Oct 31 04:32:28 2013 +0100 Test Rename: Add Bug 729 / Bug 849 to Bug 816 Unit Test Names - Allowing a better unit test lookup commit c532abc1618fde46ef36bd70acdcc6b1d45fcbf1 Author: Sven Gothel Date: Thu Oct 31 02:51:04 2013 +0100 Rename Binary*Test -> TestBinary*NOUI to get picked up by build-test.xml's junit.run.noui commit bca7777fa507a509f413c6dc8919bab641fe0d15 Author: Mark Raynsford Date: Thu Oct 31 01:07:48 2013 +0000 Add functions for converting to and from binary16 half-precision floating point values. Derived from http://mvn.io7m.com/ieee754b16, of which I am the original author. commit 17706bd9dee80f5dd2fccdc19e7c246cb3881a98 Author: Sven Gothel Date: Thu Oct 31 00:57:14 2013 +0100 TestSharedContextVBOES2NEWT1: Fix copy/paste (mistakenly used sharedGears), add println; GearsES: Add init/shared state to 'toString()' commit d2690939b46a91b346bdd2d4ce750ddb0d2136fd Author: Sven Gothel Date: Wed Oct 30 20:27:11 2013 +0100 Fix Unit Test Regression (commit 9f2a9df0a4b7093925c8854b37fba053469a4b35): GearsObject used getGL2ES2(), which is not allowed. commit 4fcc1d68d6cdfc87a80b7c86103b02ef54f3fa41 Author: Sven Gothel Date: Wed Oct 30 19:14:53 2013 +0100 Add GLES1Impl 'finalizeInit()' to avoid a 'catched exception roundtrip' commit 802f52a2ed4769703786f03fbc9b036fecca49bd Author: Sven Gothel Date: Wed Oct 30 18:28:22 2013 +0100 Android NEWT.ScreenDriver MonitorSize: Use xdpi for for width (fix); Add DEBUG output. commit 2481774c4a4a5d734dbeb2f7d8963f45d1b2a437 Author: Sven Gothel Date: Wed Oct 30 18:26:24 2013 +0100 Fix Bug 875 - Cleanup branch using VersionNumber (fix 'Int' check strictMatch minor) and reuse isES; EGLContext: Use strictMatch for setGLFunctionAvailability() and handle failure; EGLDrawableFactory: Either detect ES3 or ES2. - Cleanup branch using VersionNumber (fix 'Int' check strictMatch minor) and reuse isES - EGLContext: Use strictMatch for setGLFunctionAvailability() and handle failure On ES, we require strictMatch, cleanup if failing. - EGLDrawableFactory: Either detect ES3 or ES2. Both only available with proper EGL context creation for ES profiles (TODO) commit 9ce3f5f0d47f21a7dc229f0df03ac0fbda295f35 Author: Sven Gothel Date: Wed Oct 30 11:50:24 2013 +0100 Bug 875: Safeguard setGLFunctionAvailability(.. strictMatch=false.. ) operation, throw InternalError if failing commit c53440b808ecf8ea066479c004cac4cdbb1e989d Author: Sven Gothel Date: Wed Oct 30 01:57:34 2013 +0100 Bug 776 GLContext Sharing: GLSharedContextSetter API Doc: Add 'glFinish()' to lifecycle considerations ; GearsES2: Add glFinish() after init(). commit 5cb08416a6ed44814065771f469a94f79c49ab3f Author: Sven Gothel Date: Wed Oct 30 00:58:58 2013 +0100 Bug 776 GLContext Sharing: GLSharedContextSetter API Doc: No 'Driver stability constraints' ; Fixing Test cases: Enable all, GearsObject*: Check VBO - GLSharedContextSetter API Doc: No 'Driver stability constraints' - No driver issues .. - Use 'Lifecycle Considerations' to describe usage issues .. - Fixing Test cases: Enable all, GearsObject*: Check VBO - GearsObject* needs to check whether VBO is 'still alive' if sharing is enabled. - Enable all unit tests. commit 6f9cb656934fe9daa85e585ee2770210ceb43950 Author: Sven Gothel Date: Wed Oct 30 00:27:08 2013 +0100 Bug 776 GLContext Sharing: Fix copy-ctor GLArrayDataClient: Create new instance of GLArrayHandler of same type; Simplify GLArrayHandler inheritance. Refines commit 9f2a9df0a4b7093925c8854b37fba053469a4b35 commit 0943389a6d34622c112ed73ce3d2d2e25434ce59 Author: Sven Gothel Date: Tue Oct 29 23:28:28 2013 +0100 Bug 877 Concurrency Discussion: Update doc MultiThreading.txt, volatile field usage; GLDrawableImpl: Make read-only fields final. commit 85be81387d33224036b3fe2b02d74aab2926e028 Author: Brice Figureau Date: Tue Oct 29 14:49:25 2013 +0100 Fix #875 - ES version should be strictly validated When initializing the context in GLContextImpl.setGLFuncAvailability ES devices must be validated by strictly matching the major version, otherwise on ES3 devices we were mixing ES1 implementation with ES3 contexts, ultimately crashing in a safeguard. Signed-off-by: Brice Figureau commit 9f2a9df0a4b7093925c8854b37fba053469a4b35 Author: Sven Gothel Date: Tue Oct 29 13:51:32 2013 +0100 Bug 776 GLContext Sharing: Add copy-ctor to GLArrayData* w/ sliced Buffer; Refine GearsObject* GLArrayDataServer copying; GearsES*: Init VBO eagerly Add copy-ctor to GLArrayData* w/ sliced Buffer to allow general sharing of VBO via these high-level types. Refine GearsObject* GLArrayDataServer copying (commit bcfaa149b9803ce33c5a356cbcb45f7dfd3e4361): Utilize new GLArrayData* copy-ctor. GearsES*: Init VBO eagerly, allowing VBO usage after init(..). commit d8074fb1df1bdb63fdb97585c797c15d34695e9c Author: Sven Gothel Date: Tue Oct 29 11:13:01 2013 +0100 GLDrawableFactory: Add 'GLAutoDrawable createDummyAutoDrawable(..)' for convenience Added: GLAutoDrawable createDummyAutoDrawable(AbstractGraphicsDevice deviceReq, boolean createNewDevice, GLProfile glp) commit d83d54f2aaf9b8389a64fba7a8c05c495873d941 Author: Sven Gothel Date: Tue Oct 29 11:10:58 2013 +0100 Bug 876: BuildComposablePipeline: getGL*() shall not return downstream.getGL*() [TraceGL* / DebugGL*] ; Simplify GLContextImpl's set Debug/Trace Pipeline Regression of commit 0002fccdcd6383874b2813dc6bbe3e33f5f00924: "Trace/Debug shall utilize downstream identification for isGL*() and getGL*() methods." Using the downstream identification commit is right for the isGL*() case, however, getGL*() returned the downstream object which makes the caller loosing the pipeline! Instead, we shall produce !GEN_GL_IDENTITY_BY_ASSIGNABLE_CLASS: "if( isGL() ) { return this; } throw new GLException("Not a implementation");" or for GEN_GL_IDENTITY_BY_ASSIGNABLE_CLASS: "return this;" commit 5dffa6a4895a06edc44de6fe335c35af291fbd19 Author: Sven Gothel Date: Tue Oct 29 03:08:19 2013 +0100 Fix TestSharedContextNewtAWTBug523: Don't use VAO's w/ GL2 context - No VAO on GL2 ctx on OSX ; GLWindow #2 shall also use sharedDrawable; Cleanup .. commit 9b133d6b0408d08e79f2973eabd4d1d29c695747 Author: Sven Gothel Date: Tue Oct 29 03:06:57 2013 +0100 GLDrawableHelper.reshape(): Catch pre-existing GL errors before glViewport(..) and dump it (Add stack trace if DEBUG) commit 3598b398dfd39502078f3750ad97bbbece060846 Author: Sven Gothel Date: Mon Oct 28 19:34:20 2013 +0100 Bug 776 GLContext Sharing: Add GLSharedContextSetter to SWT GLCanvas commit bcfaa149b9803ce33c5a356cbcb45f7dfd3e4361 Author: Sven Gothel Date: Mon Oct 28 03:58:01 2013 +0100 Bug 776 GLContext Sharing: Add note about driver stability (destruction order) ; Fix unit tests (Shared Gears, wait for created context and destruction order) - Add note about driver stability (destruction order) - See GLSharedContextSetter: Don't destroy master context before slaves! - Fix spec-overview.html#SHARED links, add link to GLSharedContextSetter in SHARED subsection. - Fix unit tests (Shared Gears, wait for created context and destruction order) - The GearsObject sharing was completly bogus! It simply used the _same_ GLArrayDataServer instance for sharing, but it should use a _copy_ of the shared GLArrayDataServer while only preserving the VBO object! Fixed, while adding required methods to GLArrayDataServer. - Waiting for the created GLContext of a GLAutoDrawable required us to pass the latter _and_ check whether it's GLContext exists and is natively created. - Accomodated the destruction order - see above! commit f73c10f71be979d214537679f85f1897c5642e11 Author: Sven Gothel Date: Sun Oct 27 18:57:02 2013 +0100 Bug 776 GLContext Sharing: Add GLSharedContextSetter to GLJPanel commit aa7cbaea0c6998644ca9311f269ba0aae224d1c4 Author: Sven Gothel Date: Sun Oct 27 18:52:00 2013 +0100 Fix GLCanvas ctor shared GLContext: Use helper.setSharedContext(..) remove local shared ctx fields. Regression of 7f7a23dd0ddf106e6f0c69fc2a05ff92ac56200e commit 7f7a23dd0ddf106e6f0c69fc2a05ff92ac56200e Author: Sven Gothel Date: Sun Oct 27 17:51:08 2013 +0100 Bug 776 GLContext Sharing: Refine API for relaxed and lazy GLContext sharing ; Fix GLContext memory contract (volatile) (Unit test remarks see below) - Add shared GLContext queries - Refined GLContextShareSet: - Use IdentityHashMap since GLContext's can only be identical w/ same reference (footprint, performance) - Add API doc for clarification - Add methods: - ArrayList getCreatedShares(final GLContext context) - ArrayList getDestroyedShares(final GLContext context) - Use 'final' where possible - Add GLContext methods: - boolean isShared() - List getCreatedShares() - List getDestroyedShares() - Add GLSharedContextSetter interface defining setting a shared GLContext directly (GLContext) or via a GLAutoDrawable: - setSharedContext(GLContext) - setSharedAutoDrawable(GLAutoDrawable) Both cause initialization/creation of GLAutoDrawable's drawable/context to be postponed, if the shared GLContext is not yet created natively or the shared GLAutoDrawable's GLContext does not yet exist. Most of impl. resides in GLDrawableHelper Implemented in: - GLAutoDrawableBase, GLOffscreenAutoDrawable - GLWindow - AWT GLCanvas TODO: - GLJPanel - SWT GLCanvas - GLDrawableFactory: - Add 'GLOffscreenAutoDrawable createOffscreenAutoDrawable(..)' variant w/o passing the optional shared GLContext _and_ specifying lazy GLContext creation. This allows to benefit from GLSharedContextSetter contract. Lazy GLContext creation is performed at 2st display() call at the latest. All JOGL code and unit tests use this new method now. - Mark 'createOffscreenAutoDrawable(..)' w/ shared GLContext argument and immediate GLContext creation deprecated - shall be removed in 2.2.0 - Make reference to GLContext and it's native handle volatile Since we rely on the query 'GLContext.isCreated()' to properly allow GLAutoDrawable's to query whether a shared GLContext is natively created (already), the handle must be volatile since such query and the actual creation may operate on different threads. +++++ - Add/Refine shared GLContext unit tests demonstrating diff. sharing methods. All variants of using shared GLContext: com.jogamp.opengl.test.junit.jogl.acore.TestSharedContextVBO* Most convenient way to share via setSharedAutoDrawable(GLAutoDrawable): com.jogamp.opengl.test.junit.jogl.acore.TestSharedContextVBOES2[NEWT|AWT]3 AWT use w/ JTabbedPane using setSharedAutoDrawable(GLAutoDrawable): com.jogamp.opengl.test.junit.jogl.acore.TestSharedContextWithJTabbedPaneAWT commit ff3832bf24f02fc44a7494be49d210cacce43977 Author: Sven Gothel Date: Sun Oct 27 10:16:25 2013 +0100 spec-overview.html: Shared OpenGL context must be supported .. (GL spec) commit b642b87c85329b37a181f96e1d7adeea9fb6b79f Author: Sven Gothel Date: Sun Oct 27 10:15:48 2013 +0100 API doc: GLStateKeeper (wording), GLAutoDrawable (enh. init desc.), GLDrawable (Shared Context) commit a444e03c8a346492de400b203d22f3f6c0067628 Author: Sven Gothel Date: Fri Oct 25 04:44:39 2013 +0200 TestGLProfile00NEWT: Dump Desktop's and EGL's default-device GLProfiles commit 5ee57df0fab57124afb31bc65fd87e9184cf8f16 Author: Sven Gothel Date: Fri Oct 25 04:44:06 2013 +0200 Fix Bug 872: ES3 and ES3-GLSL Version not properly Handled GLContext: - Proper API doc for Version* fields - getStaticGLSLVersionNumber(): ES3 -> Version300 - hasGLSL(): Add ES3 ShaderCode: - addDefaultShaderPrecision(): - ES2 default precision: Don't 'tune up' default precision for fragment shader, use 'mediump' - Add ES3 default precision (equal to ES2 default precision) - requiresDefaultPrecision(): Shall returns 'true' for ES3 as well! commit ed47ed58374fe57e2d1db9b2d0af6e29595016dd Author: Sven Gothel Date: Fri Oct 25 03:35:24 2013 +0200 Fix regression of commit 34b35c5a0a379a6b4c0b23b9d347a0b1338f0239 - GLContextImpl.createContextARBVersions(..) erroneous upper bounds check. commit 7b6fe9e4d26b4d3ff2a9ffac12523bcd29196db0 Author: Sven Gothel Date: Fri Oct 25 01:39:51 2013 +0200 GLProfile: Fix native profile mapping, i.e. use actual mapped profile-impl as detected and mapped by GLContext ; Enhance glAvailabilityToString(..) We shall not map profile == profile-impl, i.e. GL3 -> GL3, but use GLContext.getAvailableGLProfileName(device, reqMajor, reqProfileBits). The latter reflects the actual mapped context as detected. glAvailabilityToString(..) - Partition result in [Natives, Common and Mappings] - Mappings dumps mapped keys to profiles, while excluding default. Default is added at last. - Add count. commit 4050d0a319e88d4795cdefd1fd84789430adc1a2 Author: Sven Gothel Date: Fri Oct 25 01:30:08 2013 +0200 JoglVersion: "Default Profiles on device" -> "GLProfiles on device" - Since we do use the named device commit e1ffbf2ae6eb837dc1576eedaacbbb68247139f2 Author: Sven Gothel Date: Fri Oct 25 01:29:24 2013 +0200 Fix GLContext: getGLProfile() add missing GLES3; getAvailableGLProfile(device, ..) shall use GLProfile.get(device, ..) commit f8b21903cf0db85fdc16c8e1892003702a05a33f Author: Sven Gothel Date: Fri Oct 25 00:01:34 2013 +0200 Use org.junit.Assert instead of deprecated junit.framework.Assert commit dc2deb071ca192594426791e95804a208e030ce3 Author: Sven Gothel Date: Fri Oct 25 00:01:12 2013 +0200 Bug 867 OSX [Common Code]: Trigger GLRendererQuirks.GL4NeedsGL3Request and make it sticky; Only alias profiles if HW-Accelerated! Only alias profiles if HW-Accelerated! GLContextImpl.mapGLVersions(..) shall not map a higher profile to a lower if it is a software renderer. +++ GLContextImpl.mapGLVersions(..) attempts to trigger GLRendererQuirks.GL4NeedsGL3Request if OSX 10.9 by creating a GL3 core context first. +++ GLContextImpl.setGLFunctionAvailability(): - On OSX 10.9: Detect GLRendererQuirks.GL4NeedsGL3Request and make it sticky (per device) while 'withinGLVersionsMapping' - Merge sticky quirks w/ local quirks +++ TestGearsES2NEWT: Add cmdline '-gl2' to force GL2 profile. commit cbc641e89136098e0a9e79afe74b45203f828587 Author: Sven Gothel Date: Thu Oct 24 23:48:55 2013 +0200 Bug 867 - OSX: Allow core >=4 if isMavericksOrLater; Use [kCGLOGLPVersion_GL4_Core, kCGLOGLPVersion_GL3_Core] for major==4 depending on sticky GLRendererQuirks.GL4NeedsGL3Request commit 970c9823007d1618e67480440ff40e7802dbb90f Author: Sven Gothel Date: Thu Oct 24 23:43:43 2013 +0200 Bug 871 - Add optional xcode.clang support for all modules (Extends Bug 837 w/ xcode's xcrun) - Remove abs. include path. #include -> #include commit 38025a602750161c72a50ad7a25e97fb7a6cb6df Author: Sven Gothel Date: Thu Oct 24 23:42:01 2013 +0200 Bug 867 - OSX 10.9: Recognize OpenGL Core Profile > 3.0 - Add GLRendererQuirks: Quirk GL4NeedsGL3Request and 'sticky device quirks' The 'sticky device quirks' are required to share quirks among devices as collected while mapping the GL versions (audit). Those are context independent and may only be detected for certain contexts. They can be pushed/added to the context's quirks, but also queried at context creation (after mapping) - before the local quirks are being created. commit 445e6117edb0ce3545d01065a067fb7a751db030 Author: Harvey Harrison Date: Wed Oct 23 00:33:24 2013 -0700 jogl: add generics annotations to lists in the waveout code Signed-off-by: Harvey Harrison commit ee9d26c28589a25329ebd26ee6f714db0eedd092 Author: Harvey Harrison Date: Wed Oct 23 00:01:48 2013 -0700 jogl: add generic annotations to the packed rectangle utility package Signed-off-by: Harvey Harrison commit 3647f6ad5ee3bc490a5647aee2de8d02119dd46c Author: Sven Gothel Date: Thu Oct 24 04:56:08 2013 +0200 GLContext CTX_IMPL_* bits: Use 10 cached bits (+1), and 6 uncached (-1) ; CTX_IMPL_FP32_COMPAT_API: "FP32 compat-api" -> "FP32 compat" commit b77bd2e9de054124ef81413aa338c635dbdc5a54 Author: Harvey Harrison Date: Wed Oct 23 13:25:59 2013 -0700 jogl: indent trace statements in the Trace pipelines when we hit glBegin The indent was being reduced on glEnd/glEndList but was never being incremented. The intent appeared to be to indent all statements between glBEgin/glEnd pairs to show the nested context of those calls. Add the increment after printing the glBegin trace statement. Signed-off-by: Harvey Harrison commit 0e79445985e23f0ff8c600137052cc446af421be Author: Harvey Harrison Date: Wed Oct 23 10:25:17 2013 -0700 jogl: add final to Debug wrapper error code and fix indentation Make the indentation consistent in each function wrapper. Signed-off-by: Harvey Harrison commit 5a79f9138d3aa72ce683f790988bc686cd87e2e1 Author: Sven Gothel Date: Wed Oct 23 18:18:44 2013 +0200 MacOSXJAWTWindow.CALayer DEBUG: Only Dump AWT location-on-screen if property DEBUG_CALAYER_POS_CRITICAL is explicitly set. - DEBUG_CALAYER_POS_CRITICAL = nativewindow.debug.JAWT.OSXCALayerPos Since AWT's location-on-screen query can cause an AWT deadlock, which is the sole purpose of our custom lock-free impl, don't enable it's DEBUG output w/ default DEBUG flags. commit 1f8a46cf71d5ecd9b8d649ccb09ccf986c48b960 Author: Brice Figureau Date: Wed Oct 23 16:58:16 2013 +0200 Fix Bug 866 - Frequent IndexOutOfBoundsException in jogamp.opengl.egl.EGLGraphicsConfigurationFactory: Add missing 'else' in branch commit fa865a86033f64309b777dec7f557376f7f0eb46 Author: Harvey Harrison Date: Tue Oct 22 22:50:42 2013 -0700 jogl: pass format and arguments directly to the printGLError function This saves us a bit more code size as the String.format is now in the common helper rather than in every GL wrapper function. Signed-off-by: Harvey Harrison commit 7fd9174afe73ae2a61af9a6d101afb7f21bb608b Author: Harvey Harrison Date: Tue Oct 22 22:23:53 2013 -0700 jogl: save on class size in the Debug pipelines Using a format String and arg list produces smaller class files for the Debug classes as many of the format strings are identical and shared. Signed-off-by: Harvey Harrison commit cf0d18c7b82801f41f6fe30f5d09b6a0a9546893 Author: Harvey Harrison Date: Tue Oct 22 00:20:06 2013 -0700 jogl: do not generate an extra String for the Debug pipeline wrappers Build the caller string directly and don't wrap it in an extra constructor. Update the indentation level for the newly added if-block from the previous commit. Signed-off-by: Harvey Harrison commit c1bb679c5d6d36e91c146d5e075e093bc83a07f1 Author: Harvey Harrison Date: Tue Oct 22 00:12:44 2013 -0700 jogl: change code generation for Debug pipelines to avoid building large strings - split the check for a GL error from the output of the error string - only build the caller String when there is an error to report - wrap String building in an if() block rather than using an early return as we don't know the return type in the postDownstreamCallHook Signed-off-by: Harvey Harrison commit 27f6fce2e629e421793eaeb0e09cb6c10d9c0aa1 Author: Harvey Harrison Date: Mon Oct 21 00:43:46 2013 -0700 jogl: use .format() to build the method signature when generating pipeline code Signed-off-by: Harvey Harrison commit aba59607bc738361dd81c5cd5362ad0ec322b441 Author: Harvey Harrison Date: Mon Oct 21 00:02:17 2013 -0700 jogl: adapt code generator to output @Override annotations in various places This adds the @Override to methods in the GL implementations (debug, trace, etc) for methods implementing a GL Profile. It also adds @Override for the toString() method. Signed-off-by: Harvey Harrison commit 6d841a02d084142e2f90333a420cd39af1188d80 Author: Harvey Harrison Date: Fri Oct 18 08:35:23 2013 -0700 jogl: enable generics annotations on TextRenderer These were already here, enable them. Signed-off-by: Harvey Harrison commit 873a34debe0870c4ecd7aa646f92a18b2efc7ce8 Author: Harvey Harrison Date: Fri Oct 18 08:13:03 2013 -0700 jogl: remove clone() version that can only ever fail commit: d75835796900cac602f7e5789601ffba0a27efe2 (Graph: More std. functionality (equals, clone) / Better in-place transformation (cubic -> quadratic)) Added a clone method, but did not implement Cloneable, meaning Object.clone() will always throw CloneNotSupportedException. This method never returns anythng but null. Signed-off-by: Harvey Harrison commit 2e13993b57061e897889a3a6f4a1d44a19c32d11 Author: Harvey Harrison Date: Fri Oct 18 08:06:46 2013 -0700 jogl: remove clone() method that only throws Exceptions commit: a4e3f241cfba55e407c68eba91ffcc4beb0758b5 (Analysis of glXMakeCurrent freeze on ATI fglrx 8.78.6; Misc ..) Removed 'implements Clonable' from NamedDisplay, which means Object.clone() will always throw CloneNotSupportedException. Kill clone(). Signed-off-by: Harvey Harrison commit 946e0b59847de43d3dd51080abe7b9703d431e5f Author: Harvey Harrison Date: Fri Oct 18 07:55:37 2013 -0700 jogl: replce more unneeded String() construction Signed-off-by: Harvey Harrison