package frogatto
tag 1010804 - patch
tag 1010804 + helpneeded
thanks

Hello,

I confirm that the package is not building without this patch, and that the
build proceeds with this patch. But the problem is that the code is segfaulting
systematically when I build the package with this patch. The failure occures
everytime I get out of the house, at the very beginning of the game (all
settings default).

At first I thought it was unrelated, but the valgrind trace is the following:

==549940== Jump to the invalid address stated on the next line
==549940==    at 0x0: ???
==549940==    by 0x5B62C4: water::draw_area(water::area const&, int, int, int, 
int) const (water.cpp:169)
==549940==    by 0x5B6705: water::draw(int, int, int, int) const (water.cpp:125)
==549940==    by 0x451763: level::draw(int, int, int, int) const 
(level.cpp:1930)
==549940==    by 0x2FC8C9: render_scene(level const&, screen_position&, entity 
const*, bool) (draw_scene.cpp:358)
==549940==    by 0x48753B: level_runner::play_cycle() (level_runner.cpp:1410)
==549940==    by 0x488B33: level_runner::play_level() (level_runner.cpp:713)
==549940==    by 0x1E341E: main (main.cpp:830)
==549940==  Address 0x0 is not stack'd, malloc'd or (recently) free'd
==549940== 
==549940== 
==549940== Process terminating with default action of signal 11 (SIGSEGV)
==549940==    at 0x4DED07F: raise (raise.c:45)
==549940==    by 0x4DED1FF: ??? (in 
/usr/lib/x86_64-linux-gnu/libpthread-2.33.so)

And the line pointed is the following:

#if defined(TARGET_OS_HARMATTAN) || defined(TARGET_PANDORA) || 
defined(TARGET_TEGRA) || defined(TARGET_BLACKBERRY)
        if (glBlendEquationOES) {
                glBlendEquationOES(GL_FUNC_REVERSE_SUBTRACT_OES);
        }
#elif defined(GL_OES_blend_subtract)
        glBlendEquationOES(GL_FUNC_REVERSE_SUBTRACT_OES);            <-- HERE! 
THIS IS LINE 169
#elif defined(USE_GLES2)
        glBlendEquation(GL_FUNC_REVERSE_SUBTRACT);
#else
        if(GLEW_EXT_blend_equation_separate && (GLEW_ARB_imaging || 
GLEW_VERSION_1_4)) {
                glBlendEquation(GL_FUNC_REVERSE_SUBTRACT);
        } else {
                const int max_color = std::max(water_color[0], 
std::max(water_color[1], water_color[2]));
                water_color[0] = (max_color - water_color[0])/8;
                water_color[1] = (max_color - water_color[1])/8;
                water_color[2] = (max_color - water_color[2])/8;
        }
#endif

So I feel bad about applying the patch and uploading the package to the archive.

Any help is welcomed. The package is uptodate on salsa.
Mt

Attachment: signature.asc
Description: This is a digitally signed message part

Reply via email to