[PATCH v4 09/19] Android manual state tracking: add integer,pointer maps

José Fonseca jose.r.fonseca at gmail.com
Sat Jul 14 00:08:11 PDT 2012


Imre,

One of these "Android manual state tracking ..." patches is causing
failures in apitrace test suite [1]:

$ make test
[...]
The following tests FAILED:
	  7 - app_gl_varray_drawarrays (Failed)
	  8 - app_gl_varray_elements (Failed)
	  9 - app_gl_varray_interleaved (Failed)
	 10 - app_egl_gl_tri (Failed)
	 13 - app_egl_gles1_tri (Failed)

$ cat Testing/Temporary/LastTest.log
[...]
7/35 Testing: app_gl_varray_drawarrays
7/35 Test: app_gl_varray_drawarrays
Command: "/usr/bin/python"
"/home/jfonseca/projects/apitrace/tests/app_driver.py" "--apitrace"
"/home/jfonseca/projects/apitrace/apitrace" "--a
pitrace-source" "/home/jfonseca/projects/apitrace" "--api" "gl"
"--ref-dump" "/home/jfonseca/projects/apitrace/tests/apps/gl/varray_drawarrays.
ref.txt" "--" "/home/jfonseca/projects/apitrace/tests/apps/gl/varray"
"pointer" "drawarrays"
Directory: /home/jfonseca/projects/apitrace/tests/apps/gl
"app_gl_varray_drawarrays" start time: Jul 14 08:07 BST
Output:
----------------------------------------------------------
/home/jfonseca/projects/apitrace/scripts
/home/jfonseca/projects/apitrace/tests/apps/gl/varray pointer drawarrays
/home/jfonseca/projects/apitrace/apitrace trace --api gl --output
/home/jfonseca/projects/apitrace/tests/apps/gl/varray_drawarrays.trace
-- /ho
me/jfonseca/projects/apitrace/tests/apps/gl/varray pointer drawarrays
apitrace: tracing to
/home/jfonseca/projects/apitrace/tests/apps/gl/varray_drawarrays.trace
apitrace: redirecting dlopen("libGL.so.1", 0x102)
/home/jfonseca/projects/apitrace/apitrace dump --color=never
/home/jfonseca/projects/apitrace/tests/apps/gl/varray_drawarrays.trace
FAIL (missing call `glColorPointer(size = 3, type = GL_FLOAT, stride =
12, pointer = blob(72))` (found `glColorPointer(size = 3, type =
GL_FLOA
T, stride = 12, pointer = NULL)`))
<end of output>
Test time =   0.73 sec
----------------------------------------------------------
Test Failed.


So it seems that pointers to user arrays are wrongly becoming NULL.

Jose

[1] https://github.com/apitrace/apitrace-tests


On Thu, Jun 14, 2012 at 4:55 PM, Imre Deak <imre.deak at intel.com> wrote:
> Signed-off-by: Imre Deak <imre.deak at intel.com>
> ---
>  wrappers/gltrace.hpp |   12 ++++++++++++
>  1 files changed, 12 insertions(+), 0 deletions(-)
>
> diff --git a/wrappers/gltrace.hpp b/wrappers/gltrace.hpp
> index 49d8631..85d81ac 100644
> --- a/wrappers/gltrace.hpp
> +++ b/wrappers/gltrace.hpp
> @@ -28,6 +28,8 @@
>
>
>  #include "glimports.hpp"
> +#include <map>
> +#include <set>
>
>
>  namespace gltrace {
> @@ -39,6 +41,11 @@ enum Profile {
>      PROFILE_ES2,
>  };
>
> +struct gl_buffer {
> +       size_t size;
> +       void *data;
> +};
> +
>  class Context {
>  public:
>      enum Profile profile;
> @@ -46,6 +53,11 @@ public:
>      bool user_arrays_arb;
>      bool user_arrays_nv;
>      unsigned retain_count;
> +    std::map <GLuint, GLuint> bindings;
> +    std::map <GLuint, struct gl_buffer *> buffers;
> +    std::set <GLenum> enabled_caps;
> +    std::map <GLenum, const GLvoid *> pointers;
> +    std::map <GLenum, GLuint> integers;
>
>      Context(void) : profile(PROFILE_COMPAT), user_arrays(false),
>                      user_arrays_arb(false), user_arrays_nv(false),
> --
> 1.7.5.4
>


More information about the apitrace mailing list