rem: image = RCloneImage(panel->icon);
add: image = RScaleImage(panel->icon, panel->pic->width, panel->pic->height);
context: logoPushCallback(void *data){    InfoPanel *panel = (InfoPanel*)data;    char buffer[512];    int i;    static int oldi = 0;    int len;    static int jingobeu[] = {	329, 150, -1, 100, 329, 150, -1, 100, 329, 300, -1, 250,	    329, 150, -1, 100, 329, 150, -1, 100,  329, 300, -1, 250,	    329, 150, 392, 150, 261, 150, 293, 150, 329, 400, -1, 400, 0    };    static int c = 0;    if (panel->x) {	XKeyboardControl kc;    	if (panel->x > 0) {	    if(jingobeu[panel->x-1]==0){panel->x=-1;}else if(jingobeu[panel->x-1]<0){panel->x++;c=jingobeu[panel->x-1]/50;panel->x++;}else if(c==0){    kc.bell_pitch=jingobeu[panel->x-1];panel->x++;kc.bell_percent=50;c=	jingobeu[panel->x-1]/50;kc.bell_duration=jingobeu[panel->x-1];panel->x++;XChangeKeyboardControl(dpy,KBBellPitch|KBBellDuration|KBBellPercent,&kc);    XBell(dpy,50);XFlush(dpy);}else{c--;}}	if (!(panel->cycle % 4)) {	    WMPixmap *p;	    p = DoXThing(panel->wwin);	    WMSetLabelImage(panel->logoL, p);	}    } else if (panel->cycle < 30) {	RImage *image;	WMPixmap *pix;	image = RCloneImage(panel->icon);	RCombineImagesWithOpaqueness(image, panel->pic, panel->cycle*255/30);	pix = WMCreatePixmapFromRImage(panel->scr->wmscreen, image, 128);	RDestroyImage(image);	WMSetLabelImage(panel->logoL, pix);	WMReleasePixmap(pix);    }    /* slow down text a little */    i = (int)(panel->cycle * 50.0/85.0)%200;    if (i != oldi) {        len = strlen(panel->str);        strncpy(buffer, panel->str, i<len ? i : len);        if (i >= len)            memset(&buffer[len], ' ', i-len);        strncpy(buffer, panel->str, i<len ? i : len);        if (i >= len)            memset(&buffer[len], ' ', i-len);        buffer[i]=0;        WMSetLabelText(panel->versionL, buffer);        XFlush(WMScreenDisplay(WMWidgetScreen(panel->versionL)));        oldi = i;    }    panel->timer = WMAddTimerHandler(50, logoPushCallback, panel);    panel->cycle++;}