ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/rxvt-unicode/src/rxvttoolkit.C
(Generate patch)

Comparing rxvt-unicode/src/rxvttoolkit.C (file contents):
Revision 1.104 by sf-exg, Sun Jan 24 21:53:13 2010 UTC vs.
Revision 1.106 by sf-exg, Mon Feb 22 09:47:41 2010 UTC

427bool rxvt_display::ref_init () 427bool rxvt_display::ref_init ()
428{ 428{
429#ifdef LOCAL_X_IS_UNIX 429#ifdef LOCAL_X_IS_UNIX
430 if (id[0] == ':') 430 if (id[0] == ':')
431 { 431 {
432 val = rxvt_malloc (5 + strlen (id) + 1); 432 if (!(val = rxvt_temp_buf<char> (5 + strlen (id) + 1)))
433 return false;
433 strcpy (val, "unix/"); 434 strcpy (val, "unix/");
434 strcat (val, id); 435 strcat (val, id);
435 dpy = XOpenDisplay (val); 436 dpy = XOpenDisplay (val);
436 free (val);
437 } 437 }
438 else 438 else
439#endif 439#endif
440 dpy = 0; 440 dpy = 0;
441 441
607{ 607{
608 rxvt_term * &cur_owner = !clipboard ? selection_owner : clipboard_owner; 608 rxvt_term * &cur_owner = !clipboard ? selection_owner : clipboard_owner;
609 609
610 if (cur_owner && cur_owner != owner) 610 if (cur_owner && cur_owner != owner)
611 { 611 {
612 rxvt_term *term = cur_owner;
612 cur_owner->selection_clear (clipboard); 613 term->selection_clear (clipboard);
613 cur_owner->flush (); 614 term->flush ();
614 } 615 }
615 616
616 cur_owner = owner; 617 cur_owner = owner;
617} 618}
618 619
634 int l, m; 635 int l, m;
635 636
636 l = strlen (locale); 637 l = strlen (locale);
637 m = strlen (modifiers); 638 m = strlen (modifiers);
638 639
639 if (!(id = (char *)malloc (l + m + 2))) 640 if (!(id = rxvt_temp_buf<char> (l + m + 2)))
640 return 0; 641 return 0;
641 642
642 memcpy (id, locale, l); id[l] = '\n'; 643 memcpy (id, locale, l); id[l] = '\n';
643 memcpy (id + l + 1, modifiers, m); id[l + m + 1] = 0; 644 memcpy (id + l + 1, modifiers, m); id[l + m + 1] = 0;
644 645
645 rxvt_xim *xim = xims.get (id); 646 rxvt_xim *xim = xims.get (id);
646
647 free (id);
648 647
649 return xim; 648 return xim;
650} 649}
651 650
652void rxvt_display::put_xim (rxvt_xim *xim) 651void rxvt_display::put_xim (rxvt_xim *xim)

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines