Marc Lehmann <[EMAIL PROTECTED]> writes:
> What happens when you add a simple createvisual/destroy just before the
> iconfile code, i.e.:
>
> destroy_asvisual (
> create_asvisual_for_id (dpy, display->screen, depth, XVisualIDFromVisual
> (visual), cmap, NULL), 0);
It crashes.
>> I'm running Fedora Core 9 with libAfterImage-1.18-1.fc9.i386 and gcc
>> 4.3.0. Maybe one of those Fedora security enhancements which regularly
>> bring trouble?
>
> I use libafterstep 2.2.8 (from the afterstep 2.2.8 release - it's actually
> older than 1.18 - afterstep versioning is total chaos).
>
> It would be nice if you could debug this further - most likely this is
> simply a bug in libafterstep.
I just did some digging around. If I link urxvt against a manually
compiled static libAfterImage-1.18 instead of the dynamic
libAfterImage-1.18 from Fedora, urxvt doesn't crash. So I had the
suspicion the Fedora library is broken. However, a minimal example
outside of urxvt (see below) linked against Fedora's library does not
crash using the compiler options and libraries used by rxvt-unicode. So
I'm still searching for the trigger of the bug.
========================================================================
Not crashing minimal example
========================================================================
//g++ -o asviewtest -g -O3 -fno-rtti -fvisibility-inlines-hidden
-fno-threadsafe-statics -fno-enforce-eh-specs -w -DDEBUG_STRICT
-I/usr/include/libAfterImage/ -lm -lsupc++ -lXft -lXrender -lfontconfig
-lfreetype -lX11 -lAfterImage -lfreetype -ltiff -lX11 -L/usr/lib -lSM -lICE
-lGL -lXext -ljpeg -lpng -lz -lm -lX11 asviewtest.c
#include <string.h>
#include <stdlib.h>
#include <afterbase.h>
#include <afterimage.h>
int main(int argc, char* argv[])
{
char *image_file = "rose512.jpg" ;
ASImage *im ;
ASVisual *asv ;
int screen, depth ;
set_application_name( argv[0] );
dpy = XOpenDisplay(NULL);
XSynchronize (dpy, True);
screen = DefaultScreen(dpy);
depth = DefaultDepth( dpy, screen );
asv = create_asvisual( dpy, screen, depth, NULL );
im = file2ASImage( image_file, 0xFFFFFFFF, SCREEN_GAMMA, 0,
getenv("IMAGE_PATH"), NULL );
ASImage2file( im, NULL, "asview.png", ASIT_Png, NULL );
destroy_asvisual( asv, False );
asv = NULL ;
return 0 ;
}
--
Have you ever considered how much text can fit in eighty columns? Given that a
signature typically contains up to four lines of text, this space allows you to
attach a tremendous amount of valuable information to your messages. Seize the
opportunity and don't waste your signature on bullshit that nobody cares about.
_______________________________________________
rxvt-unicode mailing list
[email protected]
http://lists.schmorp.de/cgi-bin/mailman/listinfo/rxvt-unicode