I have a LinkedQueue that stores the calls to anything from the GLES20 class. After loading it up I send a requestRender() call to GLSurfaceView and in onDrawFrame() I process the queue and call the actual GLES20 method.
Yet when I call GLES20.glLinkProgram() the function never returns. I don't have anything in the logcat, no exception, no killed thread nothing. It just remains there. Any ideas in which conditions glLinkProgram() doesn't return and what can I do to debug this situation? I use a queue in which I add the gl commands issued by the renderer and then I requestRender() to empty the queue by iterating through it and calling each method in the added order. Some gl commands are of get type and they can't be added to a queue so after issuing glCreateShader I immediately requestRender() and store the retrieved id that I then pass into the queue with the next commands like glAttachShader etc. So in one onDrawFrame() call I create the shaders and in the next I attach the source compile and link. What I do may seem awkward but it does create both a vertex and fragment shader and then compiles them both correctly. It also creates a program with no errors. But linking the shaders to program just goes into infinite loop or something -- You received this message because you are subscribed to the Google Groups "Android Developers" group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/android-developers?hl=en