*** \\10.0.0.1\dwilliss\lesstif\lib\XmString.c	Fri Jun 4 14:04:45 2004 UTC
--- C:\home\dev\tnt70\Xlibs\lesstif\lib\Xm-2.1\XmString.c	Wed Jun 9 17:28:25 2004 UTC
***************
*** 2428,2434 ****
  	clipped = False;
  	default_line_height = 0;
  
! 	ort = rt = XmRenderTableCopy(fontlist, 0, 0);
  	inc = 0;	/* This is the number to increment comp->font with
  			 * because of the push()/pop() operations.
  			 */
--- 2428,2434 ----
  	clipped = False;
  	default_line_height = 0;
  
! 	rt = XmRenderTableCopy(fontlist, 0, 0);
  	inc = 0;	/* This is the number to increment comp->font with
  			 * because of the push()/pop() operations.
  			 */
***************
*** 2522,2528 ****
  					/* Push it in front of the private rendertable */
  					if (rend) {
  						inc++;
! 						rt = _XmRenderTablePushRendition(rt, rend);
  					}
  
  					DEBUGOUT(_LtDebug(__FILE__, NULL,
--- 2522,2531 ----
  					/* Push it in front of the private rendertable */
  					if (rend) {
  						inc++;
+ 						ort = rt;
+ 						rt = _XmRenderTablePushRendition(ort, rend);
! 						XmRenderTableFree(ort);
+ 
  					}
  
  					DEBUGOUT(_LtDebug(__FILE__, NULL,
***************
*** 2546,2552 ****
  					/* Pop it from the private rendertable */
  					if (rend) {
  						inc--;
! 						rt = _XmRenderTablePopRendition(rt, rend);
  						XmRenditionFree(rend);
  					}
  					rend = 0;
--- 2549,2557 ----
  					/* Pop it from the private rendertable */
  					if (rend) {
  						inc--;
+ 						ort = rt;
+ 						rt = _XmRenderTablePopRendition(ort, rend);
! 						XmRenderTableFree(ort);
  						XmRenditionFree(rend);
  					}
  					rend = 0;
***************
*** 2643,2653 ****
  				/* Push it in front of the private rendertable */
  				if (rend) {
  					inc++;
! 					rt = _XmRenderTablePushRendition(rt, rend);
  				}
  
  				XmRenditionFree(rend);
  				rend = NULL;
  				continue;
  			} else if (comp->type == XmSTRING_COMPONENT_RENDITION_END) {
  				/* Get the rendition tag */
--- 2648,2661 ----
  				/* Push it in front of the private rendertable */
  				if (rend) {
  					inc++;
+ 					ort = rt;
+ 					rt = _XmRenderTablePushRendition(ort, rend);
! 					XmRenderTableFree(ort);
  				}
  
  				XmRenditionFree(rend);
  				rend = NULL;
+ 				XtFree(tag);
  				continue;
  			} else if (comp->type == XmSTRING_COMPONENT_RENDITION_END) {
  				/* Get the rendition tag */
***************
*** 2660,2670 ****
  
  				/* Pop it from the private rendertable */
  				if (rend) {
! 					rt = _XmRenderTablePopRendition(rt, rend);
  					inc--;
  					XmRenditionFree(rend);
  				}
  				rend = 0;
  				continue;
  			} else if (comp->type == XmSTRING_COMPONENT_TAB) {
  				Position	prev;
--- 2668,2681 ----
  
  				/* Pop it from the private rendertable */
  				if (rend) {
+ 					ort = rt;
! 					rt = _XmRenderTablePopRendition(ort, rend);
  					inc--;
  					XmRenditionFree(rend);
+ 					XmRenderTableFree(ort);
  				}
  				rend = 0;
+ 				XtFree(tag);
  				continue;
  			} else if (comp->type == XmSTRING_COMPONENT_TAB) {
  				Position	prev;
***************
*** 2882,2888 ****
  
  	if (rend)
  		XmRenditionFree(rend);
! 	XmRenderTableFree(ort);
  	XFreeGC(d, mygc);
  }
  #else
--- 2893,2899 ----
  
  	if (rend)
  		XmRenditionFree(rend);
! 	XmRenderTableFree(rt);
  	XFreeGC(d, mygc);
  }
  #else
