here is the backtrace: #0 0x4072af89 in extract_float_rgba (n=128, rgba=0xbffef080, srcFormat=32993, srcType=5121, src=0x0, swapBytes=0 '\0') at image.c:2389 s = (const GLubyte *) 0x0 i = 1 srcFormat = 0 srcType = 3221155968 swapBytes = 0 '\0' redIndex = 2 greenIndex = 1 blueIndex = 0 alphaIndex = 3 stride = 4 rComp = 2 bComp = 0 gComp = 1 aComp = 2 #1 0x4072d273 in _mesa_unpack_color_span_chan (ctx=0x8060750, n=128, dstFormat=6407, dest=0x8219f90 "", srcFormat=32993, srcType=5121, source=0x0, srcPacking=0x80759e0, transferOps=0) at image.c:2949 n = 4294967295 transferOps = 1 dstComponents = 3 dstAlphaIndexdstLuminanceIndex = 0 dstIntensityIndex = 0 rgba = {{0, 0, 0, 0} <repeats 3831 times>, {0, 0, 2.00586796, 3.65983224}, {2.86285782, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, { 2.86273003, 0, 0, 3.65983224}, {3.64945221, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 2.00586796, 3.65135789, 2.86285782}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 2.86273003}, {0, 0, 3.65135789, 2.86314392}, {0, 0, 0, 0}, { 0, 0, 0, 0}, {0, 0, 0, 0}, {2.00586796, 3.51964116, 2.86285782, 0}, {0, 0, 0, 0}, {0, 3.2177732, 4.12444592, 0}, {0, 2.48604361e-41, 1.12103877e-44, 1.79506333e-42}, {0, 4.0332754e-34, -1.99954319, 3.79641461}, { 4.0332754e-34, 1.79506333e-42, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 2.00586796, 3.19258499, 2.86295414}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 2.01990032}, {0, 0, 3.19258499, 2.86273003}, {0, 0, 0, 0}, {0, 0, 0, 0}, { 0, 0, 0, 0}, {2.00586796, 3.09972286, 2.86295414, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 2.01990032, 0}, {0, 3.09972286, 2.86258888, 0}, {0, 0, 0, 0}, {0, 0, 2.02007294, -1.99960136}, {1.40129846e-45, -1.99909973, 4.81864292e-34, -1.99911594}, {3.23865438, -1.9991188, -1.9991188, 5.7453237e-44}, {-1.99913025, 3.28679299, 0, -1.99960709}, {3.10652876, 0, 3.46900082, 1.08040112e-42}, {3.46897888, 6.86636248e-44, 9.41672568e-43, 3.11105442}, {3.46897888, 4.8186746e-34, -1.99910831, 3.10362506}, { 3.4689827, 3.46833801, -1.99911213, 3.28598833}, {3.46897888, 5.7453237e-44, 0, 3.46833801}, {5.7453237e-44, -1.9991188, -1.99911594, 3.29063559}, {4.8186746e-34, -1.9991188, 5.7453237e-44, 2.10054016}, { -1.9991188, 4.81865256e-34, -1.99960804, 2.05652165}, {-1.9991188, -1.9991188, 3.19262075, 2.0318706}, {4.82217751e+30, 4.41656728e+21, 1.38984701e+31, 7.15380948e+22}, {2.84074381e+20, 2.63079795e+20, 5.17632392e+22, 1.75374282e+19}, {7.16257381e+28, 1.12599257e+24, 9.49851667e-39, 3.78350585e-44}, {4.02160495e-34, 2.02007294, 2.02078915, 2.0283463}, {-1.99914455, 2.00784373, 2.0283463, 5.06266139e-32}, { 2.02614975, -1.99913645, 2.02029419, 2.94272678e-44}, {3.64983177, 0, 1.40129846e-45, -1.99913645}, {1.12103877e-44, 2.00981522, -1.99960089, 0}, {5.06266139e-32, -1.99915123, 2.02069092, 0}, {3.51964116, 3.18692207, 4.81864292e-34, -1.999156}, {3.23865438, -1.99915886, -1.99915886, 5.7453237e-44}, {0, 3.28679299, 0, -1.99964714}, {3.10652876, 0, 3.46900082, 1.08040112e-42}, {3.46897888, 6.86636248e-44, 1.00893489e-42, 3.11105442}, {3.46897888, 4.81865256e-34, -1.99914837, 3.10362506}, { 3.4689827, 3.46833801, -1.99915218, 3.28598833}, {3.46897888, 5.7453237e-44, 0, 3.46833801}, {5.7453237e-44, -1.99915886, -1.999156, 3.29063559}, {4.81865256e-34, -1.99915886, 5.7453237e-44, 2.10054016}, { -1.99915886, 4.81846522e-34, -1.99964809, 2.05652165}, {-1.99915886, -1.99915886, 2.0140779, 1.12103877e-44}, {4.82217751e+30, 4.41656728e+21, 1.38984701e+31, 7.15380948e+22}, {2.84074381e+20, 2.63079795e+20, 5.17632392e+22, 1.75374282e+19}, {7.16257381e+28, 1.12599257e+24, 9.49851667e-39, 0}, {2.86273003, 0, 2.02007294, 3.09972286}, {3.09972286, -1.99919033, -1.99916077, 2.0111022}, {2.01400399, 0, 0, 0}, {0, 2.02007294, -1.99960136, 2.02007294}, {-1.99917984, 3.19258499, -1.99917555, 2.0140779}, {1.12103877e-44, 2.80259693e-44, 2.02007294, -1.99960756}, {2.01005054, 2.80259693e-44, 5.04467447e-44, 2.2958874e-41}, {2.31907845, 2.0200901, 2.00981522, -1.99960089}, {2.01990032, 0, 0, 2.02007294}, {3.09433794, 2.00586796, 2.44095159, 2.86285782}, { 1135.11267, -1.99919224, 1536.38672, 1176.71875}, {1135.83679, 1176.71875, 3.36311631e-44, 1136.31519}, {0, 0, 2.80259693e-45, 2.80259693e-45}, { 1536.42383, -1.99919224, 0, 1141.56592}, {0, 0, 0, 1176.71875}, { 7.44930264e-41, 4.33205414, 1536.38672, 1137.85083}, {-nan(0x7fffff), 3.28679299, 1536.38672, 1137.849}, {1135.83679, 1176.71875, 3.36311631e-44, 1136.31519}, {0, 0, 2.80259693e-45, 2.80259693e-45}, { 3.46897888, 4.77907881e-34, 0, 1176.71875}, {0, 0, 0, 1135.79688}, { 3.46897888, 1137.03394, 1176.71875, 1135.63501}, {1.40129846e-45, 1.40129846e-45, 1536.38672, 1135.63245}, {4.54020702e-41, 2.01990032, 1536.40332, 4.25994733e-43}, {1536.71484, 4.33213234, 4.33211708, 1536.23438}, {5.60519386e-45, 1122.36206, 1176.71875, 1141.80518}, {0, 0, 1024, 768}, {0, 1.40129846e-45, 3.66854215, 1141.77917}, {0, 0, 0, 0}, {0, 0, 0, 0}, {1.01400032e-20, 1.50463994e-36, 2.69049305e-43, 3.68776914e-40}, {1.87663292e-40, 0, 1.43492963e-42, 1.07619722e-42}, {0, 0, 0, 0}, {3.22326673e-40, 0, -nan(0x7fffff), -nan(0x7fffff)}, { 2.98564154e-39, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 1.08214689e-19, 1.46936794e-38, 0}, {0, 1.90903038e-38, 4.59401689e-41, 2.13000954e-38}, { 4.59401689e-41, 0, 1.43492963e-42, 1.07619722e-42}, {0, 0, 0, -nan(0x7fffff)}, {5.83945172e-39, 2.69049305e-43, 2.91470081e-42, 0}, {0, 0, 0, 0}, {9.84440197e-41, 0, 0, 2.25796406e-39}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 5.84519144e-39, 2.69049305e-43}, {2.91470081e-42, 0, 0, 0}, {0, 0, 1.04183738e-40, 0}, {0, 2.26370378e-39, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {7.82901248e-40, 0, 0, 0}, {0, 0, 0, 0}, {0, 7.82901248e-40, 0, 0}, {0, 0, 0, 0}, {0, 0, 7.82901248e-40, 0}, {0, 0, 0, 0}, {0, 0, 0, 7.82901248e-40}, {0, 0, 0, 0}, {0, 0, 0, 0}, {7.82901248e-40, 0, 0, 0}, {0, 0, 0, 0}, {0, 7.82901248e-40, 0, 0}, {0, 0, 0, 0}, {0, 0, 7.82901248e-40, 0}, {0, 0, 0, 0}, {0, 0, 0, 7.82901248e-40}, {0, 0, 0, 0}, {0, 0, 0, 0}, {7.82901248e-40, 0, 0, 0}, { 0, 0, 0, 0}, {0, 7.82901248e-40, 0, 0}, {0, 0, 0, 3.26794457}, {0, 0, 7.82901248e-40, 0}, {4.14579678, -1.99951398, -1.99951649, 3.2466228}, { -1.99951982, 4.14579678, 1.26116862e-44, 7.82901248e-40}, {0, 0, 0, 0}, { -1.9995141, 3.24492812, 0, 0}, {7.82901248e-40, 0, 0, 0}, {0, 0, 0, 0}, { 0, 7.82901248e-40, 0, 0}, {0, 0, 0, 0}, {0, 0, 7.82901248e-40, 0}, {0, 0, 0, 0}, {0, 0, 0, 7.82901248e-40}, {0, 0, 0, 0}, {0, 0, 0, 0}, { 7.82901248e-40, 0, 0, 0}, {0, 0, 0, 0}, {0, 1.93568238e-19, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 1.40129846e-44, 0}, {0, 0, 0, -1.99938631}, { 0, 4.20389539e-45, -1.9995451, -1.9995141}, {0, 4.14578438, 6.16571324e-44, -nan(0x7fffff)}, {0, 3.17897224, 2.86273003, 3.78350585e-44}, {4.02160495e-34, 2.02007294, 2.86240292, 2.87328935}, { -1.99939632, 2.00784373, 2.87328935, 1.03181025e-38}, {2.87003326, -1.99938822, 2.02029419, 2.94272678e-44}, {3.65021324, 0, 1.40129846e-45, -1.99938822}...} #2 0x4075611b in _mesa_make_temp_chan_image (ctx=0x8060750, dims=2, logicalBaseFormat=6407, textureBaseFormat=6407, srcWidth=128, srcHeight=256, srcDepth=1, srcFormat=32993, srcType=5121, srcAddr=0x0, srcPacking=0x80759e0) at texstore.c:457 srcStride = 512 dims = 0 transferOps = 0 components = 3 freeSrcImage = 0 '\0' img = 0 row = 1 tempImage = (GLchan *) 0x8219f90 "" dst = (GLchan *) 0x8219f90 "" transferOps = 0 components = 3 freeSrcImage = 0 '\0' img = 0 tempImage = (GLchan *) 0x8219f90 "" #3 0x40756a2a in _mesa_texstore_rgb565 (ctx=0x8060750, dims=2, baseInternalFormat=6407, dstFormat=0x408494a0, dstAddr=0x8209e00, dstXoffset=0, dstYoffset=0, dstZoffset=0, dstRowStride=256, dstImageStride=0, srcWidth=128, srcHeight=256, srcDepth=1, srcFormat=32993, srcType=5121, srcAddr=0x0, srcPacking=0x80759e0) at texstore.c:845 dstYoffset = 0 dstZoffset = 0 srcFormat = 0 srcPacking = (const struct gl_pixelstore_attrib *) 0x80759e0 tempImage = (const GLchan *) 0x200 <Address 0x200 out of bounds> src = (const GLchan *) 0x80759e0 "\004" dstImage = (GLubyte *) 0xbffff1b8 "Hòÿ¿½w\200@P\a\006\b\002" img = 66052 row = 1079903168 col = 0 tempImage = (const GLchan *) 0x200 <Address 0x200 out of bounds> dstImage = (GLubyte *) 0xbffff1b8 "Hòÿ¿½w\200@P\a\006\b\002" img = 66052 row = 1079903168 srcRowStride = -1073745480 src = (const GLubyte *) 0x2 <Address 0x2 out of bounds> row = 136312840 #4 0x408077bd in tdfxTexImage2D (ctx=0x8060750, target=3553, level=1, internalFormat=32849, width=256, height=256, border=0, format=32993, type=5121, pixels=0x0, packing=0x80759e0, texObj=0x81ffab0, texImage=0x81ff808) at tdfx_tex.c:995 ctx = (GLcontext *) 0x8060750 internalFormat = 0 width = 256 height = 256 format = 32993 type = 5121 pixels = (const GLvoid *) 0x0 packing = (const struct gl_pixelstore_attrib *) 0x80759e0 texObj = (struct gl_texture_object *) 0x81ffab0 texImage = (struct gl_texture_image *) 0x81ff808 fxMesa = 0x805fd68 ti = (tdfxTexInfo *) 0x81ffc88 mml = (tdfxMipMapLevel *) 0x0 texelBytes = 0 #5 0x4074b88d in _mesa_TexImage2D (target=3553, level=1, internalFormat=32849, width=128, height=256, border=0, format=32993, type=5121, pixels=0x0) at teximage.c:2200 texUnit = (struct gl_texture_unit *) 0x81ff808 texObj = (struct gl_texture_object *) 0x81ffab0 texImage = (struct gl_texture_image *) 0x81ff808 target = 3553 pixels = (const GLvoid *) 0x0 postConvWidth = 128 postConvHeight = 256 ctx = (GLcontext *) 0x8060750 #6 0x4005e6e5 in evas_gl_common_texture_new (gc=0x81f5d18, im=0x80, smooth=256) at evas_gl_texture.c:107 ttw = 128 tth = 256 l = 1 tex = (Evas_GL_Texture *) 0x82022e8 im_data = (int *) 0x44eeb008 im_w = 240 im_h = 320 tw = 256 shift = 512 texfmt = 32849 #7 0x4005d8a0 in evas_gl_common_image_draw (gc=0x81f5d18, dc=0x81fbee0, im=0x81fca60, sx=0, sy=0, sw=240, sh=320, dx=0, dy=0, dw=240, dh=320, smooth=-1) at evas_gl_image.c:170 r = 255 g = 255 b = 255 a = 255 tx1 = 2.8043217659439321 ty1 = 2.2530174255372102 tx2 = 2.8051381141874892 ty2 = 2.7131485939411277 #8 0x4006019e in evas_engine_gl_x11_image_draw (data=0x805e7b0, context=0x0, surface=0x805e7b0, image=0x0, src_x=0, src_y=0, src_w=0, src_h=0, dst_x=0, dst_y=0, dst_w=0, dst_h=0, smooth=0) at evas_engine.c:788 No locals. #9 0x4002e046 in evas_object_image_render (obj=0x81fc358, output=0x805e7b0, context=0x81fbee0, surface=0x805e7b0, x=0, y=0) at evas_object_image.c:1270 br = 131 bb = 1074163728 inw = 136299352 outw = 134604720 ox = 1079900480 inx = -1073744792 inh = 320 outx = 0 outh = 1073839984 bl = 1073866251 bt = 136298208 imw = 1079136054 oy = 1079903184 iny = 134604720 outy = 1074163520 imh = -1073744856 dobreak_h = 1 ydy = 0 dobreak_w = 1 idh = 320 idx = 0 iw = 240 idw = 240 idy = 0 ih = 320 o = (Evas_Object_Image *) 0x81fc450 #10 0x40037b09 in evas_render_updates (e=0x8059838) at evas_render.c:280 x = 0 y = 0 w = 0 h = 0 obj = (Evas_Object *) 0x81fc358 l3 = (Evas_List *) 0x0 off_x = 0 off_y = 0 updates = (Evas_List *) 0x82021e0 obscuring_objects = (Evas_List *) 0x0 obscuring_objects_orig = (Evas_List *) 0x8202210 active_objects = (Evas_List *) 0x8202240 delete_objects = (Evas_List *) 0x0 restack_objects = (Evas_List *) 0x0 ll = (Evas_List *) 0x8202240 l = (Evas_Object_List *) 0x81fc358 surface = (void *) 0x805e7b0 ux = 0 uy = 0 uw = 240 uh = 560 cx = 0 cy = 0 cw = 240 ch = 560 #11 0x40037fb8 in evas_render (e=0x8059838) at evas_render.c:376 updates = (Evas_List *) 0x0 #12 0x08052150 in main (argc=1, argv=0xbffff6f4) at evas_gl_x11_main.c:133 ev = {type = 12, xany = {type = 12, serial = 34, send_event = 0, display = 0x8055050, window = 20971522}, xkey = {type = 12, serial = 34, send_event = 0, display = 0x8055050, window = 20971522, root = 1, subwindow = 319, time = 238, x = 1, y = 0, x_root = 0, y_root = 0, state = 0, keycode = 0, same_screen = 0}, xbutton = {type = 12, serial = 34, send_event = 0, display = 0x8055050, window = 20971522, root = 1, subwindow = 319, time = 238, x = 1, y = 0, x_root = 0, y_root = 0, state = 0, button = 0, same_screen = 0}, xmotion = {type = 12, serial = 34, send_event = 0, display = 0x8055050, window = 20971522, root = 1, subwindow = 319, time = 238, x = 1, y = 0, x_root = 0, y_root = 0, state = 0, is_hint = 0 '\0', same_screen = 0}, xcrossing = { type = 12, serial = 34, send_event = 0, display = 0x8055050, window = 20971522, root = 1, subwindow = 319, time = 238, x = 1, y = 0, x_root = 0, y_root = 0, mode = 0, detail = 0, same_screen = 0, focus = 0, state = 0}, xfocus = {type = 12, serial = 34, send_event = 0, display = 0x8055050, window = 20971522, mode = 1, detail = 319}, xexpose = {type = 12, serial = 34, send_event = 0, display = 0x8055050, window = 20971522, x = 1, y = 319, width = 238, height = 1, count = 0}, xgraphicsexpose = {type = 12, serial = 34, send_event = 0, display = 0x8055050, drawable = 20971522, x = 1, y = 319, width = 238, height = 1, count = 0, major_code = 0, minor_code = 0}, xnoexpose = { type = 12, serial = 34, send_event = 0, display = 0x8055050, drawable = 20971522, major_code = 1, minor_code = 319}, xvisibility = { type = 12, serial = 34, send_event = 0, display = 0x8055050, window = 20971522, state = 1}, xcreatewindow = {type = 12, serial = 34, send_event = 0, display = 0x8055050, parent = 20971522, window = 1, x = 319, y = 238, width = 1, height = 0, border_width = 0, override_redirect = 0}, xdestroywindow = {type = 12, serial = 34, send_event = 0, display = 0x8055050, event = 20971522, window = 1}, xunmap = {type = 12, serial = 34, send_event = 0, display = 0x8055050, event = 20971522, window = 1, from_configure = 319}, xmap = {type = 12, serial = 34, send_event = 0, display = 0x8055050, event = 20971522, window = 1, override_redirect = 319}, xmaprequest = {type = 12, serial = 34, send_event = 0, display = 0x8055050, parent = 20971522, window = 1}, xreparent = {type = 12, serial = 34, send_event = 0, display = 0x8055050, event = 20971522, window = 1, parent = 319, x = 238, y = 1, override_redirect = 0}, xconfigure = {type = 12, serial = 34, send_event = 0, display = 0x8055050, event = 20971522, window = 1, x = 319, y = 238, width = 1, height = 0, border_width = 0, above = 0, override_redirect = 0}, xgravity = {type = 12, serial = 34, send_event = 0, display = 0x8055050, event = 20971522, window = 1, x = 319, y = 238}, xresizerequest = {type = 12, serial = 34, send_event = 0, display = 0x8055050, window = 20971522, width = 1, height = 319}, xconfigurerequest = {type = 12, serial = 34, send_event = 0, display = 0x8055050, parent = 20971522, window = 1, x = 319, y = 238, width = 1, height = 0, border_width = 0, above = 0, detail = 0, value_mask = 0}, xcirculate = {type = 12, serial = 34, send_event = 0, display = 0x8055050, event = 20971522, window = 1, place = 319}, xcirculaterequest = {type = 12, serial = 34, send_event = 0, display = 0x8055050, parent = 20971522, window = 1, place = 319}, xproperty = {type = 12, serial = 34, send_event = 0, display = 0x8055050, window = 20971522, atom = 1, time = 319, state = 238}, xselectionclear = { type = 12, serial = 34, send_event = 0, display = 0x8055050, window = 20971522, selection = 1, time = 319}, xselectionrequest = { type = 12, serial = 34, send_event = 0, display = 0x8055050, owner = 20971522, requestor = 1, selection = 319, target = 238, property = 1, time = 0}, xselection = {type = 12, serial = 34, send_event = 0, display = 0x8055050, requestor = 20971522, selection = 1, target = 319, property = 238, time = 1}, xcolormap = {type = 12, serial = 34, send_event = 0, display = 0x8055050, window = 20971522, colormap = 1, new = 319, state = 238}, xclient = {type = 12, serial = 34, send_event = 0, display = 0x8055050, window = 20971522, message_type = 1, format = 319, data = {b = "î\000\000\000\001", '\0' <repeats 14 times>, s = {238, 0, 1, 0, 0, 0, 0, 0, 0, 0}, l = {238, 1, 0, 0, 0}}}, xmapping = {type = 12, serial = 34, send_event = 0, display = 0x8055050, window = 20971522, request = 1, first_keycode = 319, count = 238}, xerror = {type = 12, display = 0x22, resourceid = 0, serial = 134565968, error_code = 2 '\002', request_code = 0 '\0', minor_code = 64 '@'}, xkeymap = {type = 12, serial = 34, send_event = 0, display = 0x8055050, window = 20971522, key_vector = "\001\000\000\000?\001\000\000î\000\000\000\001", '\0' <repeats 18 times>}, pad = {12, 34, 0, 134565968, 20971522, 1, 319, 238, 1, 0 <repeats 15 times>}} pause_me = 0 disp = (Display *) 0x8055050 win = 20971522 attr = {background_pixmap = 0, background_pixel = 1079900684, border_pixmap = 2180, border_pixel = 0, bit_gravity = 0, win_gravity = 1079900480, backing_store = 0, backing_planes = 5, backing_pixel = 3221223080, save_under = 1073787616, event_mask = 163916, do_not_propagate_mask = 1079901408, override_redirect = 1078389472, colormap = 20971521, cursor = 1078389477} chint = {res_name = 0x8053a23 "Evas_GL_X11_Test", res_class = 0x8053a45 "Main"} szhints = {flags = -1073744360, x = 1078701496, y = 1077360376, width = 0, height = 24641422, min_width = -1073744224, min_height = 1073826608, max_width = 1073826016, max_height = 15255, width_inc = 1077360376, height_inc = -1073744272, min_aspect = { x = 1073787151, y = 1077360788}, max_aspect = {x = 1080725536, y = 1}, base_width = 0, base_height = 8796, win_gravity = 1077360376}
we're passing the fourth arg of StoreImage wrong; should be a pointer, not a structure. tdfx_tex.c versions 1.17 and up should be fixed. this particular fix has gone in three times now, and reverted twice. let's see if it sticks.
Created attachment 398 [details] [review] Brian's suggested fix Can you try the attached patch?
i've tested the attached patch with evas_gl_x11_test and it fixes the segfault. i'll close this once the fix hits cvs.
checked in, closing. please test with either current CVS or with a snapshot from 20040623 or later.
Mass version move, cvs -> git
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.