Hey all,
Simply changing "square" to "curve3d" in the pix_coordinate example crashes PD due to gdb trace at end of this message. (PD 0.38-2 on OSX with Gem 0.90)
1. Create window 2. Load an image (I tired a number of JPG and TIF images)
attached is the test-patch.
I was really looking forward to using pix_coordinate to tile textures, any other way to do this?
Thanks all.
b>
Program received signal EXC_BAD_ACCESS, Could not access memory. curve3d::render(GemState*) (this=0x784000, state=0xbffffb80) at src/Geos/curve3d.cpp:166 166 in src/Geos/curve3d.cpp (gdb) where #0 curve3d::render(GemState*) (this=0x784000, state=0xbffffb80) at src/Geos/curve3d.cpp:166 #1 0x03203d4c in GemBase::gem_renderMess(GemCache*, GemState*) (this=0x784000, cache=0xdb7, state=0xbffffb80) at src/Base/GemBase.cpp:80 #2 0x0320401c in GemBase::gem_MessCallback(void*, _symbol*, int, _atom*) (data=0x10f1020, s=0xdb7, argc=1, argv=0x3) at src/Base/GemBase.h:145 #3 0x00033364 in pd_typedmess (x=0x44b1d0, s=0x1, argc=18, argv=0x6) at m_class.c:749 #4 0x00034290 in outlet_anything (x=0x340d0ec, s=0xbffff0e0, argc=0, argv=0x44b1d0) at m_obj.c:445 #5 0x03203d84 in GemBase::gem_renderMess(GemCache*, GemState*) (this=0xbffff0c0, cache=0xdb7, state=0x44b1d0) at src/Base/GemBase.cpp:92 #6 0x0320401c in GemBase::gem_MessCallback(void*, _symbol*, int, _atom*) (data=0x10f1020, s=0xdb7, argc=1, argv=0x3) at src/Base/GemBase.h:145 #7 0x00033364 in pd_typedmess (x=0x44bfd0, s=0x1, argc=18, argv=0x6) at m_class.c:749 #8 0x00034290 in outlet_anything (x=0x340d0ec, s=0xbffff0e0, argc=0, argv=0x44bfd0) at m_obj.c:445 #9 0x03203d84 in GemBase::gem_renderMess(GemCache*, GemState*) (this=0xbffff2a0, cache=0xdb7, state=0x44bfd0) at src/Base/GemBase.cpp:92 #10 0x0320401c in GemBase::gem_MessCallback(void*, _symbol*, int, _atom*) (data=0x10f1020, s=0xdb7, argc=1, argv=0x3) at src/Base/GemBase.h:145 #11 0x00033364 in pd_typedmess (x=0x44b2e0, s=0x1, argc=18, argv=0x6) at m_class.c:749 #12 0x00034290 in outlet_anything (x=0x340d0ec, s=0xbffff0e0, argc=0, argv=0x44b2e0) at m_obj.c:445 #13 0x00033364 in pd_typedmess (x=0x44b2e0, s=0x1, argc=18, argv=0x6) at m_class.c:749 #14 0x00033364 in pd_typedmess (x=0x44b2e0, s=0x1, argc=18, argv=0x6) at m_class.c:749 #15 0x00034290 in outlet_anything (x=0x340d0ec, s=0xbffff0e0, argc=0, argv=0x44b2e0) at m_obj.c:445 #16 0x03203d84 in GemBase::gem_renderMess(GemCache*, GemState*) (this=0xbffff480, cache=0xdb7, state=0x44b2e0) at src/Base/GemBase.cpp:92 #17 0x0320401c in GemBase::gem_MessCallback(void*, _symbol*, int, _atom*) (data=0x10f1020, s=0xdb7, argc=1, argv=0x3) at src/Base/GemBase.h:145 #18 0x00033364 in pd_typedmess (x=0x44cdc0, s=0x1, argc=18, argv=0x6) at m_class.c:749 #19 0x00034290 in outlet_anything (x=0x340d0ec, s=0xbffff0e0, argc=0, argv=0x44cdc0) at m_obj.c:445 #20 0x00033364 in pd_typedmess (x=0x44cdc0, s=0x1, argc=18, argv=0x6) at m_class.c:749 #21 0x00033364 in pd_typedmess (x=0x44cdc0, s=0x1, argc=18, argv=0x6) at m_class.c:749 #22 0x00034290 in outlet_anything (x=0x340d0ec, s=0xbffff0e0, argc=0, argv=0x44cdc0) at m_obj.c:445 #23 0x03211b90 in gemhead::renderGL(GemState*) (this=0xbffff820, state=0x44cdc0) at src/Controls/gemhead.cpp:106 #24 0x03207238 in GemMan::render(void*) () at src/Base/GemMan.cpp:662 #25 0x000394e8 in sched_tick (next_sys_time=512860160) at m_sched.c:357 #26 0x000397b4 in m_scheduler () at m_sched.c:453 #27 0x000027b4 in _start (argc=0, argv=0x46db80, envp=0xbffffb80) at /SourceCache/Csu/Csu-47/crt.c:267 #28 0x8fe1a558 in __dyld__dyld_start () (gdb) bt
#N canvas 415 336 794 470 10; #X text 452 8 GEM object; #X obj 8 335 cnv 15 430 80 empty empty empty 20 12 0 14 -233017 -66577 0; #X text 39 338 Inlets:; #X text 38 385 Outlets:; #X obj 8 296 cnv 15 430 30 empty empty empty 20 12 0 14 -195568 -66577 0; #X text 17 295 Arguments:; #X obj 7 76 cnv 15 430 210 empty empty empty 20 12 0 14 -233017 -66577 0; #X obj 449 77 cnv 15 170 250 empty empty empty 20 12 0 14 -228992 -66577 0; #X text 453 60 Example:; #X obj 474 344 cnv 15 100 60 empty empty empty 20 12 0 14 -195568 -66577 0; #N canvas 0 22 454 304 gemwin 0; #X obj 132 136 gemwin; #X obj 67 89 outlet; #X obj 67 10 inlet; #X obj 67 41 route create; #X msg 67 70 set destroy; #X msg 142 68 set create; #X msg 132 112 create , 1; #X msg 198 112 destroy; #X msg 217 162 color 1 1 1; #X connect 2 0 3 0; #X connect 3 0 4 0; #X connect 3 0 6 0; #X connect 3 1 5 0; #X connect 3 1 7 0; #X connect 4 0 1 0; #X connect 5 0 1 0; #X connect 6 0 0 0; #X connect 7 0 0 0; #X connect 8 0 0 0; #X restore 479 383 pd gemwin; #X msg 479 364 destroy; #X text 475 343 Create window:; #X obj 450 188 cnv 15 160 100 empty empty empty 20 12 0 14 -24198 -66577 0; #X obj 451 84 gemhead; #X text 71 31 Class: pix object; #X obj 510 85 bng 15 250 50 0 empty empty pix_load 20 8 0 8 -262144 -1 -1; #N canvas 0 22 587 366 image 0; #X obj 77 48 inlet; #X obj 77 344 outlet; #X obj 77 205 pix_image ../../doc/gem/examples/data/fractal.JPG; #X obj 223 55 inlet; #X msg 223 123 open $1; #X obj 223 100 openpanel; #X connect 0 0 2 0; #X connect 2 0 1 0; #X connect 3 0 5 0; #X connect 4 0 2 0; #X connect 5 0 4 0; #X restore 451 113 pd image; #X text 63 306 <none>; #X text 56 398 Outlet 1: gemlist; #X text 63 352 Inlet 1: gemlist; #X text 516 105 open an image; #X text 509 118 (JPEG , TIFF , ..); #X text 50 12 Synopsis: [pix_coordinate]; #X text 13 76 Description: set the texture-coordinates for a pix; #X text 34 94 pix_coordinate remaps the S , T texture values from the default values. For instance , a texture could repeat by increasing the texture S , T values from 1 , 1 to 2 , 2 (See the examples). ; #X text 63 367 Inlet 2: list: 8 values (4 (s , t)-pairs); #X obj 538 144 loadbang; #X msg 461 237 $1 $1 0 $1 0 0 $1 0; #X floatatom 461 220 3 0 256 0 - - -; #X text 14 159 IMPORTANT NOTE-1: [pix_texture] sets the texture-coordinates to "appropriate" values , so you probably want to use [pix_coordinate] afterwards; #X obj 10 207 cnv 15 420 70 empty empty empty 20 12 0 14 -225280 -66577 0; #X text 14 209 IMPORTANT NOTE-2: if your hardware supports it , Gem tries to use "rectangle-texturing". This means that normal texture-coordinates range from 0..xsize (resp. 0..ysize). If it is not supported (or forced-off with "mode 0" to [pix_texture]) texture-coordinates range from 0..1 ; #X obj 451 266 pix_coordinate; #X msg 459 193 0 0 1 0 1 1 0 1; #X obj 451 296 curve3d 6 6; #X msg 467 167 mode 0 , repeat 1; #X obj 451 136 pix_texture; #X connect 10 0 11 0; #X connect 11 0 10 0; #X connect 14 0 17 0; #X connect 16 0 17 1; #X connect 17 0 37 0; #X connect 27 0 36 0; #X connect 28 0 33 1; #X connect 29 0 28 0; #X connect 33 0 35 0; #X connect 34 0 33 1; #X connect 36 0 37 0; #X connect 37 0 33 0;
pix_coordinate is doing something wrong. I haven't traced it yet, but did find a workaround. If you loadbang a valid set of coords like '0 0 1 0 1 1 0 1' then the patch doesn't crash for me.
cgc
On Apr 24, 2005, at 2:40 PM, B. Bogart wrote:
Hey all,
Simply changing "square" to "curve3d" in the pix_coordinate example crashes PD due to gdb trace at end of this message. (PD 0.38-2 on OSX with Gem 0.90)
- Create window
- Load an image (I tired a number of JPG and TIF images)
attached is the test-patch.
I was really looking forward to using pix_coordinate to tile textures, any other way to do this?
Thanks all.
b>
On Apr 24, 2005, at 4:50 PM, chris clepper wrote:
pix_coordinate is doing something wrong. I haven't traced it yet, but did find a workaround. If you loadbang a valid set of coords like '0 0 1 0 1 1 0 1' then the patch doesn't crash for me.
cgc
I think I fixed this by adding checks for state->texture and also that some coords exist in pix_coordinate. The above workaround does work since it creates coords for pix_coordinate to pass along.
The changes were committed but it's been awhile since I've done that so my CVS settings could be wrong. Let me know if anything is messed up.
cgc
chris clepper wrote:
I think I fixed this by adding checks for state->texture and also that some coords exist in pix_coordinate. The above workaround does work since it creates coords for pix_coordinate to pass along.
i fear there are still some more objects that have this bug... although i cannot think of one now (but i also didn't think of the obvious [pix_coordinate] when fixed the Geos...)
mfg.asd.r IOhannes
Zitiere "B. Bogart" ben@ekran.org:
Hey all,
Simply changing "square" to "curve3d" in the pix_coordinate example crashes PD due to gdb trace at end of this message. (PD 0.38-2 on OSX with Gem 0.90)
i have just recently (1 week ago) fixed most of the Geos (except for cube, square and other trivia), related to a post by zack settle. it was also announced here (2005-04-18)
this should exactly cover your case, have you tried the CVS ?
mfg.ads.r IOhannes
I just did a cvs update and still the curve3d replacing square in the pix_coordinate-help.pd patch crashes. Same memory access problem, same gdb trace.
Chris's solution does keep pd from crashing.
I could try a fresh checkout, but not anytime soon, since my 33.6 makes it quite insufficient!
Any other ideas Johannes?
B>
zmoelnig@iem.at wrote:
Zitiere "B. Bogart" ben@ekran.org:
Hey all,
Simply changing "square" to "curve3d" in the pix_coordinate example crashes PD due to gdb trace at end of this message. (PD 0.38-2 on OSX with Gem 0.90)
i have just recently (1 week ago) fixed most of the Geos (except for cube, square and other trivia), related to a post by zack settle. it was also announced here (2005-04-18)
this should exactly cover your case, have you tried the CVS ?
mfg.ads.r IOhannes
GEM-dev mailing list GEM-dev@iem.at http://lists.puredata.info/listinfo/gem-dev
There must be something wrong with either your checkout or CVS because the fix I committed does work. In fact, it just checks for what the workaround does. Again, the problem is not with curve3d but with pix_coordinate.
cgc
On Apr 26, 2005, at 1:17 PM, B. Bogart wrote:
I just did a cvs update and still the curve3d replacing square in the pix_coordinate-help.pd patch crashes. Same memory access problem, same gdb trace.
Chris's solution does keep pd from crashing.
I could try a fresh checkout, but not anytime soon, since my 33.6 makes it quite insufficient!
Any other ideas Johannes?
B>
zmoelnig@iem.at wrote:
Zitiere "B. Bogart" ben@ekran.org:
Hey all,
Simply changing "square" to "curve3d" in the pix_coordinate example crashes PD due to gdb trace at end of this message. (PD 0.38-2 on OSX with Gem 0.90)
i have just recently (1 week ago) fixed most of the Geos (except for cube, square and other trivia), related to a post by zack settle. it was also announced here (2005-04-18)
this should exactly cover your case, have you tried the CVS ?
mfg.ads.r IOhannes
GEM-dev mailing list GEM-dev@iem.at http://lists.puredata.info/listinfo/gem-dev
GEM-dev mailing list GEM-dev@iem.at http://lists.puredata.info/listinfo/gem-dev
chris clepper wrote:
There must be something wrong with either your checkout or CVS because the fix I committed does work. In fact, it just checks for what the workaround does. Again, the problem is not with curve3d but with pix_coordinate.
Chris's solution does keep pd from crashing.
so this should be fine
i guess several files were (are still(?)) compromised (that's what i was referring to in my other mail)
my checkins only concerned the Geos, as i had simply forgotten about [pix_coordinate].
mfg.ads.r IOhannes