1 diff -urN xc.org/compat.im xc/compat.im
2 --- xc.org/compat.im 1970-01-01 01:00:00.000000000 +0100
3 +++ xc/compat.im 2009-01-22 17:59:49.588848848 +0100
5 +XCOMM $XConsortium: Imakefile,v 1.78 91/09/18 14:28:23 rws Exp $
7 +#define DoSharedLib SharedLibXaw
8 +#define DoDebugLib DebugLibXaw
9 +#define DoProfileLib ProfileLibXaw
10 +#define HasSharedData YES
11 +#define LibName Xaw3d
12 +#define SoRev SOXAWREV
13 +#define IncSubdir Xaw3d
15 +#ifdef LinuxArchitecture
16 +#JUMP_ROOT_Xaw3d = $(AWIDGETSRC)3d
17 +#JUMP_IS_HOST_Xaw3d = YES
18 +#JUMP_STUBLIBS_Xaw3d = libXaw3d.sa
19 +#JUMP_SUBDIRS_Xaw3d = $(JUMP_ROOT_Xt)
20 +#JUMP_DIR_Xaw3d = $(JUMP_ROOT_Xaw3d)/shared
21 +#JUMP_VARS_Xaw3d = $(JUMP_ROOT_Xaw3d)/jump_vars
22 +#JUMP_FUNCS_Xaw3d = $(JUMP_ROOT_Xaw3d)/jump_funcs
23 +#JUMP_IGNORE_Xaw3d = $(JUMP_ROOT_Xaw3d)/jump_ignore
24 +#JUMP_EXPORT_Xaw3d = $(JUMP_DIR_Xaw3d)/jump.vars
25 +#JUMP_IMPORT_Xaw3d = $(JUMP_EXPORT_Xt) $(JUMP_EXPORT_X11)
26 +#JUMP_ADDRESS_Xaw3d = 0x60300000
27 +#JUMP_JUMPTABLESIZE_Xaw3d = 0x4000
28 +#JUMP_GOTSIZE_Xaw3d = 4096
29 +#JUMP_STUBNAMES_Xaw3d = libXaw3d
30 +#JUMP_STUBS_IMPORT_Xaw3d = $(JUMP_STUBS_IMPORT_X11)
31 +#JUMP_LDLIBS_Xaw3d = $(JUMP_ROOT_Xt)/libXt.sa $(JUMP_ROOT_Xt)/libXmu.sa \
32 +# $(JUMP_ROOT_Xt)/libXext.sa $(JUMP_ROOT_X11)/libX11.sa \
33 +# $(JUMP_LDLIBS_libc)
37 +REQUIREDLIBS = SharedXawReqs
40 +DEFINES = XawI18nDefines
42 + LINTLIBS = $(LINTXLIB) $(LINTXTOOL)
44 +# EXTRA_DEFINES = -DARROW_SCROLLBAR -DUSEGRAY
46 + EXTRA_INCLUDES = -I.
171 +#if SharedDataSeparation
172 +UNSHAREDOBJS = AllWidgets.o sharedlib.o
220 +#include <Library.tmpl>
231 +depend:: laygram.c laylex.c
233 +#if DoSharedLib && SharedDataSeparation
234 +SpecialCObjectRule(sharedlib.o,NullParameter,$(SHLIBDEF))
237 +laygram.c : laygram.y
238 + $(YACC) -d laygram.y
239 + sed 's/yy/LayYY/g' y.tab.c > laygram.c
240 + sed 's/yy/LayYY/g' y.tab.h > laygram.h
241 + $(RM) y.tab.c y.tab.h
245 + sed 's/yy/LayYY/g' lex.yy.c > laylex.c
249 + $(RM) laygram.c laylex.c
253 diff -urN xc.org/debian/changelog xc/debian/changelog
254 --- xc.org/debian/changelog 1970-01-01 01:00:00.000000000 +0100
255 +++ xc/debian/changelog 2009-01-22 17:59:49.616847943 +0100
257 +xaw3d (1.5+E-17) unstable; urgency=low
259 + * Bumped replace to conflicts with pre -16 version. That's needed for
260 + moving of the .so link
263 + -- Francesco Paolo Lovergine <frankie@debian.org> Fri, 25 Jul 2008 09:47:14 +0200
265 +xaw3d (1.5+E-16) unstable; urgency=low
267 + * New patch: MultiSrc.c.dpatch to avoid a double free bug with
268 + internalionalized text. Patch taken from Xaw and used in Fedora.
269 + (closes: #438737, #441304)
270 + * Now using ${binary:Version} instead of ${Source-Version} in debian/control.
271 + * Policy bumped to 3.8.0.
272 + * Removed now superfluous libc-dev build-dependency.
273 + * Symlink libXaw3d.so moved into -dev package.
274 + * Moved xutils -> xutils-dev dependency in -dev package.
277 + -- Francesco Paolo Lovergine <frankie@debian.org> Thu, 24 Jul 2008 12:39:29 +0200
279 +xaw3d (1.5+E-15) unstable; urgency=low
281 + * New patch: Box.c.dpatch, to avoid an infinite loop due to short int overflow.
282 + Thanks Glenn Burkhard. (closes: #420348)
283 + * Policy bumped to 3.7.2 (no changes).
284 + * Debhelper level moved to 5 with a few changes in debian/rules.
286 + -- Francesco Paolo Lovergine <frankie@debian.org> Tue, 24 Apr 2007 15:24:24 +0200
288 +xaw3d (1.5+E-14) unstable; urgency=low
290 + * Sigh, libxmu-dev is more appropriate that the headers-only package dep
291 + probably in xaw3dg-dev too.
293 + -- Francesco Paolo Lovergine <frankie@debian.org> Wed, 3 May 2006 12:17:05 +0200
295 +xaw3d (1.5+E-13) unstable; urgency=low
297 + * Reintroduced _strictly_ required X11 -dev dependencies for xaw3dg-dev.
298 + That should reduce the number of FTBS. The same list is now used in
301 + -- Francesco Paolo Lovergine <frankie@debian.org> Wed, 3 May 2006 11:39:08 +0200
303 +xaw3d (1.5+E-12) unstable; urgency=low
305 + * Removed libxaw8-dev fake dependency, because it has been dropped in xorg
307 + * Removed all X11 -dev dependencies in xaw3dg-dev, and the old
308 + libc-dev|libc6-dev now superfluous dependency too. Packages now have to
309 + declare explicitly their own -dev build-deps.
312 + -- Francesco Paolo Lovergine <frankie@debian.org> Tue, 2 May 2006 23:45:03 +0200
314 +xaw3d (1.5+E-11) unstable; urgency=low
316 + * Changed to xorg 7 conformancy in paths:
317 + /usr/X11R6/lib -> /usr/lib
318 + /usr/X11R6/include -> /usr/include
319 + (closes: #362074, #363578)
320 + * Added xutils-dev versioned dependency.
321 + * Removed fake libxp-dev build-dep due to xmkmf bug.
323 + -- Francesco Paolo Lovergine <frankie@debian.org> Sat, 15 Apr 2006 09:41:45 +0200
325 +xaw3d (1.5+E-10) unstable; urgency=low
327 + * Added dependency on libxaw8-dev as alternative to 6|7 versions.
330 + -- Francesco Paolo Lovergine <frankie@debian.org> Mon, 9 Jan 2006 08:34:44 +0100
332 +xaw3d (1.5+E-9) unstable; urgency=low
334 + * Added build-dep for libxp-dev and revised other dependencies.
336 + * Policy bumped to 3.6.2 (no changes).
337 + * Removed libc5 stuff in rules file.
339 + -- Francesco Paolo Lovergine <frankie@debian.org> Wed, 28 Sep 2005 14:18:28 +0200
341 +xaw3d (1.5+E-8) unstable; urgency=high
343 + * Added new missing build-dep libxmu-dev due to last change.
346 + -- Francesco Paolo Lovergine <frankie@debian.org> Mon, 4 Oct 2004 21:30:18 +0200
348 +xaw3d (1.5+E-7) unstable; urgency=low
350 + * Changed build-deps to reflect -dev changes in X 4.3+
353 + -- Francesco Paolo Lovergine <frankie@debian.org> Mon, 2 Aug 2004 15:32:04 +0200
355 +xaw3d (1.5+E-6) unstable; urgency=high
357 + * Removed libxaw-dev dependency and introduced libxaw7-dev dependency.
360 + -- Francesco Paolo Lovergine <frankie@debian.org> Fri, 24 Oct 2003 08:46:48 +0200
362 +xaw3d (1.5+E-5) unstable; urgency=low
364 + * Removed libc5 stuff. It currently require a xlib6-altdev pkg which is not
365 + currently available in xfree86. A control.oldlib has been preserved
366 + for eventual future use.
367 + A whishlist bug is required (to be reassigned to xfree86 :)) if
368 + a libc5 oldlib is needed by someone.
370 + * Current flex is ok, control changed consequently.
372 + -- Francesco Paolo Lovergine <frankie@debian.org> Mon, 13 Oct 2003 11:01:53 +0200
374 +xaw3d (1.5+E-4) unstable; urgency=low
376 + * Added conditional to xlib6-altdev for i386.
379 + -- Francesco Paolo Lovergine <frankie@debian.org> Sun, 28 Sep 2003 18:50:34 +0200
381 +xaw3d (1.5+E-3) unstable; urgency=medium
383 + * Added conflicts with old gv and xfig to simplify upgrading.
386 + -- Francesco Paolo Lovergine <frankie@debian.org> Sat, 27 Sep 2003 08:46:43 +0200
388 +xaw3d (1.5+E-2) unstable; urgency=low
390 + * debian/shlibs,debian/xaw3d.shlibs: Generate a dependency on xaw3dg (>= 1.5+E-1).
392 + * Policy updated to 3.6.1: no changes.
394 + -- Francesco Paolo Lovergine <frankie@debian.org> Thu, 28 Aug 2003 20:38:49 +0200
396 +xaw3d (1.5+E-1) unstable; urgency=low
398 + * Ready for unstable.
399 + Changing release version for a smooth upgrading from experimental.
400 + (closes: #117325,#196439,#144877)
402 + -- Francesco Paolo Lovergine <frankie@debian.org> Tue, 19 Aug 2003 00:35:30 +0200
404 +xaw3d (1.5e-2) experimental; urgency=low
406 + * Missing #include "XawAlloc.h" in SmeBSB.c.diff patch added.
408 + -- Francesco Paolo Lovergine <frankie@debian.org> Thu, 7 Aug 2003 15:02:54 +0200
410 +xaw3d (1.5e-1) experimental; urgency=low
412 + * New upstream release (WOW!)
413 + (should close: #117325)
414 + * New upstream, after 5 years of staling.
415 + * Removed debconf stuff. The past message about new use of Xaw3D was new at
416 + woody releasing time. Now it's time to remove it, and there is no other
417 + reason to use debconf.
418 + (should close: #196439, #144877)
419 + * Added dpatch support. There was a significant amount of historical patches
420 + in the debian release: it's time to simplify the management to avoid
421 + other pain in the ass with future releases.
422 + Upstream has also integrated almost all of our patches in his current tree,
423 + so I used dpatch to cross-check the sources.
424 + * Policy updated at 3.6.0
425 + * This release could potentially cause some breakage in other packages.
426 + Surely there is a known problem with xfigi and gv. So, there are good reasons
427 + to keep it in experimental first of all.
429 + -- Francesco Paolo Lovergine <frankie@debian.org> Mon, 4 Aug 2003 15:05:29 +0200
431 +xaw3d (1.5-24) unstable; urgency=low
433 + * Use flex-old instead of flex in Build-deps.
436 + -- Francesco Paolo Lovergine <frankie@debian.org> Fri, 13 Jun 2003 14:58:47 +0200
438 +xaw3d (1.5-23) unstable; urgency=low
440 + * Added virtual libc-dev in Build-deps and xaw3dg-dev.
441 + Removed non existent libc6.1-dev in Build-deps.
444 + -- Francesco Paolo Lovergine <frankie@debian.org> Mon, 3 Mar 2003 11:20:21 +0100
446 +xaw3d (1.5-22) unstable; urgency=low
450 + * Typo in copyright
452 + -- Francesco Paolo Lovergine <frankie@debian.org> Thu, 2 Jan 2003 19:57:10 +0100
454 +xaw3d (1.5-21) unstable; urgency=low
456 + * Changed Depends line for xaw3dg-dev in order to remove obsolete xlib6g-dev
458 + * Policy updated (3.5.8)
460 + -- Francesco Paolo Lovergine <frankie@debian.org> Tue, 10 Dec 2002 15:57:44 +0100
462 +xaw3d (1.5-20) unstable; urgency=low
464 + * Fixed a typo in fr.po.
467 + -- Francesco Paolo Lovergine <frankie@debian.org> Wed, 23 Oct 2002 19:39:26 +0200
469 +xaw3d (1.5-19) unstable; urgency=low
471 + * fr.po added for po-debconf template.
474 + -- Francesco Paolo Lovergine <frankie@debian.org> Sat, 19 Oct 2002 10:37:33 +0200
476 +xaw3d (1.5-18) unstable; urgency=low
478 + * Policy standard update (3.5.7)
479 + * Now use po-debconf for translations.
481 + -- Francesco Paolo Lovergine <frankie@debian.org> Tue, 15 Oct 2002 10:51:29 +0200
483 +xaw3d (1.5-17) unstable; urgency=low
485 + * Applied a patch to avoid scrollbar thumb shrinkage.
487 + * Removed a duplicated dh_installdebconf in rules file. This caused
488 + duplicated code in postinst/postrm files.
491 + -- Francesco Paolo Lovergine <frankie@debian.org> Fri, 4 Oct 2002 11:44:49 +0200
493 +xaw3d (1.5-16) unstable; urgency=low
495 + * Applied a patch to avoid StripChart widget spurious extra scale lines.
496 + See StripChart.c around line 351. This is now coherent with Xaw7.
497 + (closes: #56421, #59529)
499 + -- Francesco Paolo Lovergine <frankie@debian.org> Wed, 2 Oct 2002 11:40:19 +0200
501 +xaw3d (1.5-15) unstable; urgency=low
503 + * Added -DARROW_SCROLLBAR in rules file for EXTRA_DEFINES.
504 + The trick described in old scrollbars doc is no longer working due
505 + to changes in rules file: EXTRA_DEFINES in lib/Xaw3d/Imakefile are ignored.
506 + That obsolete document has been removed.
507 + Emacs folks will be happy :)
509 + This seems also closing an old bug report about scrolling in
510 + emacs21 and xterm. Or hope so. I'll see if I could get some better
511 + patches to have a rock solid correction.
514 + -- Francesco Paolo Lovergine <frankie@debian.org> Wed, 2 Oct 2002 10:19:04 +0200
516 +xaw3d (1.5-14) unstable; urgency=low
521 + -- Francesco P. Lovergine <frankie@debian.org> Mon, 29 Apr 2002 22:12:10 +0200
523 +xaw3d (1.5-13) unstable; urgency=low
525 + * Changed README.Debian contents.
528 + -- Francesco Paolo Lovergine <frankie@debian.org> Fri, 5 Apr 2002 10:04:28 +0200
530 +xaw3d (1.5-12) unstable; urgency=low
532 + * Added japanese and russian template for debconf.
535 + -- Francesco Paolo Lovergine <frankie@debian.org> Sat, 16 Mar 2002 20:11:01 +0100
537 +xaw3d (1.5-11) unstable; urgency=low
541 + * README.debian removed.
543 + * Debconf is now a pre-depend item in control file (due to preinst use).
544 + * Debconf question moved in the config script.
547 + -- Francesco Paolo Lovergine <frankie@debian.org> Thu, 31 Jan 2002 12:42:41 +0100
549 +xaw3d (1.5-10) unstable; urgency=low
551 + * Orphaned this package.
553 + -- Adrian Bunk <bunk@fs.tum.de> Fri, 25 Jan 2002 13:53:06 +0100
555 +xaw3d (1.5-9) unstable; urgency=low
557 + * Added Spanish and German debconf template files.
558 + (closes: #95439, #117682)
560 + -- Adrian Bunk <bunk@fs.tum.de> Sat, 17 Nov 2001 19:09:09 +0100
562 +xaw3d (1.5-8) unstable; urgency=low
564 + * s/Note/note/ in debian/templates. (closes: #106323)
566 + -- Adrian Bunk <bunk@fs.tum.de> Sun, 21 Oct 2001 15:40:18 +0200
568 +xaw3d (1.5-7) unstable; urgency=low
570 + * There's no longer a libc5 on m68k.
572 + -- Adrian Bunk <bunk@fs.tum.de> Tue, 20 Mar 2001 20:48:00 +0100
574 +xaw3d (1.5-6) unstable; urgency=high
576 + * The xaw3dg preinst did return an error when the "medium" debconf
577 + note wasn't displayed. I added " || true" to fix this.
579 + * debian/shlibs: Generate a dependency on xaw3dg (>= 1.5-6).
581 + -- Adrian Bunk <bunk@fs.tum.de> Tue, 20 Feb 2001 14:21:24 +0100
583 +xaw3d (1.5-5) unstable; urgency=low
585 + * xaw3dg is no longer a libXaw replacement (it was obsoleted by
588 + * Added the changes from Joey's NMU. (closes: #85884)
589 + * Corrected the error in the build dependencies. (closes: #84661)
590 + * Corrected a typo in the example Xdefault file. (closes: #83917)
591 + * Corrected the section of xaw3dg-dev from devel to x11.
592 + * Build with support for scrollbars.
594 + -- Adrian Bunk <bunk@fs.tum.de> Sat, 17 Feb 2001 00:52:28 +0100
596 +xaw3d (1.5-4.1) unstable; urgency=HIGH
598 + * NMU. Fixed temp file security holes in AsciiSrc and MultiSrc widgets.
599 + Fix taken from X, which had the same problem.
601 + -- Joey Hess <joeyh@debian.org> Tue, 13 Feb 2001 12:56:25 -0800
603 +xaw3d (1.5-4) unstable; urgency=low
605 + * Build-Depends: We need the libc5 packages only on i386 and m86k.
607 + -- Adrian Bunk <bunk@fs.tum.de> Wed, 24 Jan 2001 23:43:35 +0100
609 +xaw3d (1.5-3) unstable; urgency=medium
611 + * Added missing build dependency on xutils. (closes: #82011)
612 + * Removed the obsolete suggestion of xaw-wrappers. (closes: #79567)
614 + -- Adrian Bunk <bunk@fs.tum.de> Tue, 16 Jan 2001 00:23:38 +0100
616 +xaw3d (1.5-2) unstable; urgency=medium
618 + * Set "SOXAWREV = SOXAW6REV" in lib/Xaw3d/Imakefile to get the right
619 + so-version with XFree4. (closes: #77546)
620 + * Changed the build dependencies to reflect the changes in XFree4.
621 + * Changed debian/shlibs: libXaw is now in the libxaw6 package.
622 + * Removed the dependency of xaw3dg on ldso and added a build
623 + dependency on "libc6-dev (>= 2.2) | libc6.1-dev (>= 2.2)" instead
624 + since ldconfig is now in the libc6 package. (closes: #74657)
626 + -- Adrian Bunk <bunk@fs.tum.de> Sun, 10 Dec 2000 13:24:41 +0100
628 +xaw3d (1.5-1) unstable; urgency=low
630 + * New maintainer. (closes: #68174)
631 + * New upstream release.
632 + * xaw3dg now depends on xaw-wrappers.
633 + (closes: #3857, #7757, #15113, #16247, #35059)
634 + * s/$LDSOCONFA/$LDSOCONF/ in the postrm of xaw3d and xaw3dg.
635 + (closes: #61180, #70459)
636 + * Added build dependencies on debhelper and xlib6g-dev.
637 + * Shortened the description of the xaw3d package.
638 + * Removed debian/prerm and debian/xaw3d.prerm:
639 + The /usr/doc links are handled by dh_installdocs.
640 + * Added #DEBHELPER# tokens in debian/postrm and debian/xaw3d.postrm.
641 + * Remove lib/Xaw3d/laygram.h in the clean target.
642 + * Removed old.changes from the source.
643 + * Upload sponsored by Tony Mancill <tmancill@debian.org>.
645 + -- Adrian Bunk <bunk@fs.tum.de> Fri, 3 Nov 2000 08:06:16 +0100
647 +xaw3d (1.3-6.8) frozen unstable; urgency=low
649 + * Non-maintainer upload, blessed by the maintainer.
650 + * Fix porting issues by making xaw3d (the libc5-compat package)
651 + Architecture: i386 m68k, closes: #17184, #27133, #32244, #53515.
653 + * Used xlib6-altdev tools, too (xmkmf), to make libc5 version depend
654 + on libc5 X libs (does anyone actually use this libc5-compat lib?!).
656 + * Added Replaces: xaw3dg (<< 1.3-6.4) to xaw3dg-dev, because dpkg would
657 + barf when upgrading from versions of xaw3dg prior to that one, which
658 + still contained the static library. [important]
660 + * Updated for Policy 3.1. Converted to debhelper v2. Lintian clean.
661 + * Removed Conflicts: and Replaces: xaw3d from xaw3dg, as libc6 version
662 + does not replace functionality of libc5 version (theoretically that
663 + doesn't even work).
664 + * Did strip --strip-debug on the static library (through dh_strip),
665 + reducing it by more than a half in size.
666 + * Used upstream Imakefile/Makefile to install things (not for
667 + libc5-compat, though), actually the only modified variable is $(INCDIR).
668 + The difference is that three header files are removed - but those were
669 + most probably extra anyway; and one .c file added - but it seems to be
671 + * Made the libc5-compat Imakefile build only the shared library, as we
672 + don't use the static one, to reduce build time.
673 + * Made `clean' rule work all the time.
674 + * Moved xaw3dg-dev to section devel and xaw3d to oldlibs.
675 + * Moved Suggests: nextawg to xaw3dg package.
676 + * Upgrade to new xaw-wrappers obsoletes xaw3d(g)'s xaw-wrappers files,
677 + removed them now. Added Suggests: xaw-wrappers to library packages.
678 + * Made -dev depend on the exact same version of library package.
679 + Made -dev package's doc directory a symlink to library package's dir.
680 + * Removed version from xlib6(g) dependency from the shlibs file... it
681 + changes constantly in xlib6(g) itself, and dpkg-shlibdeps uses the
682 + xlib6g's one anyway, so there's no point in using it.
683 + * Unconditionally fixed lib/Xaw3d/XawI18n.h, to remove need for setting
684 + -DDEBIAN through make cmdline flags.
685 + * Changed backup tempfile location in postinsts from /etc to /var/run.
686 + * Some s/3d/3D/ changes. Renamed debian.README to README.Debian.
687 + Clarified descriptions in control and in xaw3dg postinst.
689 + -- Josip Rodin <jrodin@jagor.srce.hr> Sun, 30 Jan 2000 02:46:16 +0100
691 +xaw3d (1.3-6.7) unstable; urgency=low
693 + * Non-maintainer upload
694 + * Handle ld.so.conf properly in postrm as well
696 + -- Wichert Akkerman <wakkerma@debian.org> Tue, 21 Dec 1999 23:54:45 +0100
698 +xaw3d (1.3-6.6) unstable; urgency=low
700 + * Non-maintainer upload
701 + * Handle ld.so.conf properly
703 + -- Wichert Akkerman <wakkerma@debian.org> Mon, 20 Dec 1999 13:31:44 +0100
705 +xaw3d (1.3-6.5) unstable; urgency=low
707 + * Fixed shlibs to mention libxaw3d. closes: #34357
708 + * Noted bugs fixed in previous nmu's.
709 + -dev pkg: closes: #16719, #26056
710 + copyright uncompressed: closes: #14490
711 + security fix: closes: #21792
712 + * Lintian 1.0 clean.
714 + -- Adam Heath <doogie@debian.org> Sun, 21 Mar 1999 22:16:26 -0600
716 +xaw3d (1.3-6.4) unstable; urgency=low
718 + * Non-maintainer release at Joost's request.
719 + * Added support for xaw3dg-dev package.
720 + * Now xaw3d package is built only for the archs that support libc5.
721 + * Corrected typos in copyright and in description.
722 + * Copyright is now uncompressed.
723 + * Files in /usr/doc are now compressed with -9.
725 + -- Marco Pistore <pistore@di.unipi.it> Sat, 9 Jan 1999 20:29:31 +0100
727 +xaw3d (1.3-6.3) frozen unstable; urgency=HIGH
729 + * Applied xfree86's 24 May 98 patch to fix more buffer overflows (an
730 + unfiled but still critical security bug).
732 + -- Joey Hess <joeyh@master.debian.org> Sat, 20 Jun 1998 13:15:32 -0700
734 +xaw3d (1.3-6.2) frozen unstable; urgency=HIGH
736 + * Another NMU at Joost's request.
737 + * Applied patch to fix buffer overflows (critical security bug #21792).
738 + I actually applied XFree86's patch for X, using only the patch for
741 + -- Joey Hess <joeyh@master.debian.org> Tue, 5 May 1998 12:07:59 -0700
743 +xaw3d (1.3-6.1) unstable; urgency=low
745 + * Non-maintaner release, at Joost's request.
746 + * Now builds xaw3dg package for libc6 version, xaw3d package for libc5
748 + * Updated shlibs file for libc6.
749 + * Run ldconfig in postinst even if xaw3d was already in ld.so.conf.
750 + (since old version may be libc5).
751 + * Modified XawI18n.h not to include widec.h if DEBIAN is defined, and
752 + define DEBIAN while building.
753 + * Fixed file in /tmp security holes.
755 + -- Joey Hess <joeyh@master.debian.org> Fri, 3 Oct 1997 13:42:47 -0400
757 +xaw3d (1.3-6) unstable; urgency=low
759 + * Corrected the "install" message
761 + * included a shlibs file
762 + * added xaw-wrappers file for axe
764 + -- joost witteveen <joost@rulcmc.leidenuniv.nl> Sun, 3 Aug 1997 20:31:18 +0200
766 +xaw3d (1.3-5) unstable; urgency=low
768 + * Compiled with -D_REENTRANT
769 + * uses new, unreleased ld.so-1.8.9, so that the soname now can be
770 + libxaw3d, making everything somewhat easier.
772 + -- joost witteveen <joost@rulcmc.leidenuniv.nl> Sun, 9 Feb 1997 10:56:39 +0100
774 +xaw3d (1.3-4) unstable; urgency=low
776 + * Copied Joey Hess' postinst and postrm scripts (from nextaw), and
777 + removed the prerm script (why did I use a prerm script in the first place?)
779 + -- joost witteveen <joost@rulcmc.leidenuniv.nl> Fri, 7 Feb 1997 14:27:13 +0100
781 +xaw3d (1.3-3) unstable; urgency=low
783 + * Added description of Joey Hess on how to install more Xaw replacements
784 + libs on one system.
786 + -- joost witteveen <joost@rulcmc.leidenuniv.nl> Sat, 25 Jan 1997 22:22:07 +0100
788 +xaw3d (1.3-2) unstable; urgency=low
790 + * Changed /sbin/ldconfig to ldconfig in postinst, prerm.
791 + * Included changelog.Debian
792 + * gzipped /usr/doc/xaw3d/*
794 + -- joost witteveen <joost@rulcmc.leidenuniv.nl> Fri, 27 Dec 1996 19:12:04 +0100
796 +xaw3d (1.3-1) unstable; urgency=low
797 + * Upgraded to upstream version (finally!)
798 + * Converted to new source scheme.
800 + -- joost witteveen <joost@rulcmc.leidenuniv.nl> Sun, 8 Dec 1996 10:58:02 +0100
803 +mode: debian-changelog
805 diff -urN xc.org/debian/compat xc/debian/compat
806 --- xc.org/debian/compat 1970-01-01 01:00:00.000000000 +0100
807 +++ xc/debian/compat 2009-01-22 17:59:49.648848414 +0100
810 diff -urN xc.org/debian/control xc/debian/control
811 --- xc.org/debian/control 1970-01-01 01:00:00.000000000 +0100
812 +++ xc/debian/control 2009-01-22 17:59:49.612848452 +0100
817 +Maintainer: Francesco Paolo Lovergine <frankie@debian.org>
818 +Build-Depends: debhelper (>= 5),xutils-dev (>= 1:1.0.2-3), libx11-dev, libxmu-dev, libxpm-dev, libxt-dev, x11proto-core-dev, x11proto-xext-dev, bison,flex-old|flex (>= 2.5.31-16), dpatch
819 +Standards-Version: 3.8.0
823 +Depends: ${shlibs:Depends}
824 +Conflicts: axe (<< 6.1.2-2), xaw3d (<= 1.3-6), xfig (<< 1:3.2.4-rel-9), gv (<< 1:3.5.8-30.1)
825 +Description: Xaw3d widget set
826 + Xaw3d is a set of 3-D widgets based on the Athena Widget set, which
827 + adds a three dimensional appearance on some of the widgets of X11
828 + applications linked with this library.
830 + Please note that this package no longer adds a three dimensional
831 + appearance on applications dynamically linked against libXaw.
836 +Depends: xaw3dg (=${binary:Version}), xutils-dev, libx11-dev, libxmu-dev, libxpm-dev, libxt-dev, x11proto-core-dev, x11proto-xext-dev
837 +Conflicts: xaw3d-dev
838 +Replaces: xaw3dg (<< 1.5+E-16)
839 +Description: Xaw3d widget set development package
840 + Xaw3d is a set of 3-D widgets based on the R6.1 Athena Widget set, which
841 + adds a three dimensional appearance on some of the widgets of X11
842 + applications linked with this library.
844 + This is the development package (i.e. include files and static library)
845 + of the xaw3dg library.
849 diff -urN xc.org/debian/copyright xc/debian/copyright
850 --- xc.org/debian/copyright 1970-01-01 01:00:00.000000000 +0100
851 +++ xc/debian/copyright 2009-01-22 17:59:49.652849442 +0100
853 +This program was downloaded from: http://www.visi.com/~hawkeyd/xaw3d.html
855 +Authors: D.J. Hawkey Jr. <hawkeyd@visi.com> (passed-away upstream)
856 + Kaleb S. Keithley <kaleb@keithley.org> (previous upstream)
858 +This program is currently in unmaintained state, but for minimal patches
859 +applied by packager maintainers.
861 +Copyright (c) 1991, 1994 X Consortium
863 +Permission is hereby granted, free of charge, to any person obtaining a copy
864 +of this software and associated documentation files (the "Software"), to deal
865 +in the Software without restriction, including without limitation the rights
866 +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
867 +copies of the Software, and to permit persons to whom the Software is
868 +furnished to do so, subject to the following conditions:
870 +The above copyright notice and this permission notice shall be included in
871 +all copies or substantial portions of the Software.
873 +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
874 +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
875 +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
876 +X CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
877 +AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
878 +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
880 +Except as contained in this notice, the name of the X Consortium shall not be
881 +used in advertising or otherwise to promote the sale, use or other dealings
882 +in this Software without prior written authorization from the X Consortium.
885 diff -urN xc.org/debian/patches/00list xc/debian/patches/00list
886 --- xc.org/debian/patches/00list 1970-01-01 01:00:00.000000000 +0100
887 +++ xc/debian/patches/00list 2009-01-22 17:59:49.664848894 +0100
893 diff -urN xc.org/debian/patches/Box.c.dpatch xc/debian/patches/Box.c.dpatch
894 --- xc.org/debian/patches/Box.c.dpatch 1970-01-01 01:00:00.000000000 +0100
895 +++ xc/debian/patches/Box.c.dpatch 2009-01-22 17:59:49.664848894 +0100
897 +#! /bin/sh /usr/share/dpatch/dpatch-run
898 +## box.c.dpatch by Francesco Paolo Lovergine <frankie@debian.org>
900 +## All lines beginning with `## DP:' are a description of the patch.
901 +## DP: No description.
904 +diff -urNad xaw3d-1.5+E~/lib/Xaw3d/Box.c xaw3d-1.5+E/lib/Xaw3d/Box.c
905 +--- xaw3d-1.5+E~/lib/Xaw3d/Box.c 1996-10-15 16:41:18.000000000 +0200
906 ++++ xaw3d-1.5+E/lib/Xaw3d/Box.c 2007-04-24 15:28:39.000000000 +0200
907 +@@ -353,8 +353,16 @@
909 + width = preferred_width;
910 + do { /* find some width big enough to stay within this height */
913 + if (width > constraint->width) width = constraint->width;
915 ++ if (width > constraint->width/2) { /* avoid short int overflow */
916 ++ width = constraint->width;
921 + DoLayout(w, width, 0, &preferred_width, &preferred_height, FALSE);
922 + } while (preferred_height > constraint->height &&
923 + width < constraint->width);
924 diff -urN xc.org/debian/patches/Imakefile.dpatch xc/debian/patches/Imakefile.dpatch
925 --- xc.org/debian/patches/Imakefile.dpatch 1970-01-01 01:00:00.000000000 +0100
926 +++ xc/debian/patches/Imakefile.dpatch 2009-01-22 17:59:49.652849442 +0100
929 +[ -f debian/patches/00patch-opts ] && . debian/patches/00patch-opts
930 +patch_opts="${patch_opts:--f --no-backup-if-mismatch}"
932 +if [ $# -ne 1 ]; then
933 +echo >&2 "bash: script expects -patch|-unpatch as argument"
937 + -patch) patch $patch_opts -p1 < $0;;
938 + -unpatch) patch $patch_opts -p1 -R < $0;;
940 + echo >&2 "bash: script expects -patch|-unpatch as argument"
946 +diff -urNad /home/frankie/debian/mypkgs/xaw3d/xaw3d-1.5+E/lib/Xaw3d/Imakefile xaw3d-1.5+E/lib/Xaw3d/Imakefile
947 +--- /home/frankie/debian/mypkgs/xaw3d/xaw3d-1.5+E/lib/Xaw3d/Imakefile 2003-08-28 20:28:32.000000000 +0200
948 ++++ xaw3d-1.5+E/lib/Xaw3d/Imakefile 2003-08-28 20:37:21.000000000 +0200
953 ++# needed to get the right so-version with XFree4
956 + XCOMM Build options. Have you read the README.XAW3D file yet?
958 + XCOMM For color pixmaps, define MULTIPLANE_PIXMAPS:
960 + XCOMM For grayed stipple shadows, define GRAY_BLKWHT_STIPPLES:
961 + #define GRAY_BLKWHT_STIPPLES
962 + XCOMM For scrollbars with arrows, define ARROW_SCROLLBARS:
963 +-#undef ARROW_SCROLLBARS
964 ++#define ARROW_SCROLLBARS
966 + #define DoNormalLib NormalLibXaw
967 + #define DoSharedLib SharedLibXaw
969 + #define IncSubSubdir Xaw3d
971 + XCOMM When building outside an X11 source tree:
972 +-XCOMM EXTRA_INCLUDES = -I.
973 ++EXTRA_INCLUDES = -I.
975 + #ifdef SharedXawReqs
976 + REQUIREDLIBS = SharedXawReqs
980 + LINTLIBS = $(LINTXLIB) $(LINTXTOOL)
982 + BASE_HDRS = AllWidgets.h AsciiSink.h AsciiSinkP.h AsciiSrc.h AsciiSrcP.h \
983 diff -urN xc.org/debian/patches/MultiSrc.c.dpatch xc/debian/patches/MultiSrc.c.dpatch
984 --- xc.org/debian/patches/MultiSrc.c.dpatch 1970-01-01 01:00:00.000000000 +0100
985 +++ xc/debian/patches/MultiSrc.c.dpatch 2009-01-22 17:59:49.664848894 +0100
987 +#! /bin/sh /usr/share/dpatch/dpatch-run
988 +## MultiSrc.c.dpatch by Francesco Paolo Lovergine <frankie@debian.org>
990 +## All lines beginning with `## DP:' are a description of the patch.
991 +## DP: No description.
994 +diff -urNad xaw3d-1.5+E~/lib/Xaw3d/MultiSrc.c xaw3d-1.5+E/lib/Xaw3d/MultiSrc.c
995 +--- xaw3d-1.5+E~/lib/Xaw3d/MultiSrc.c 2006-01-09 08:30:52.000000000 +0100
996 ++++ xaw3d-1.5+E/lib/Xaw3d/MultiSrc.c 2008-07-24 11:16:52.000000000 +0200
999 + if ( string_set || (old_src->multi_src.type != src->multi_src.type) ) {
1000 + RemoveOldStringOrFile(old_src, string_set);
1001 ++ src->multi_src.allocated_string = old_src->multi_src.allocated_string;
1002 + file = InitStringOrFile(src, string_set);
1004 + /* Load pieces does this logic for us, but it shouldn't. Its messy.*/
1005 diff -urN xc.org/debian/patches/SmeBSB.c.dpatch xc/debian/patches/SmeBSB.c.dpatch
1006 --- xc.org/debian/patches/SmeBSB.c.dpatch 1970-01-01 01:00:00.000000000 +0100
1007 +++ xc/debian/patches/SmeBSB.c.dpatch 2009-01-22 17:59:49.664848894 +0100
1010 +[ -f debian/patches/00patch-opts ] && . debian/patches/00patch-opts
1011 +patch_opts="${patch_opts:--f --no-backup-if-mismatch}"
1013 +if [ $# -ne 1 ]; then
1014 +echo >&2 "bash: script expects -patch|-unpatch as argument"
1018 + -patch) patch $patch_opts -p1 < $0;;
1019 + -unpatch) patch $patch_opts -p1 -R < $0;;
1021 + echo >&2 "bash: script expects -patch|-unpatch as argument"
1027 +diff -urNad /home/frankie/debian/mypkgs/xaw3d/xaw3d-1.5e/lib/Xaw3d/SmeBSB.c xaw3d-1.5e/lib/Xaw3d/SmeBSB.c
1028 +--- /home/frankie/debian/mypkgs/xaw3d/xaw3d-1.5e/lib/Xaw3d/SmeBSB.c 2003-08-04 17:27:58.000000000 +0200
1029 ++++ xaw3d-1.5e/lib/Xaw3d/SmeBSB.c 2003-08-07 15:02:39.000000000 +0200
1031 + #include <X11/Xaw3d/Cardinals.h>
1032 + #include <stdio.h>
1034 ++#include "XawAlloc.h"
1036 + /* needed for abs() */
1037 + #ifndef X_NOT_STDC_ENV
1038 + #include <stdlib.h>
1039 +@@ -712,6 +714,8 @@
1041 + unsigned int width, height, bw;
1047 + width = height = 0;
1048 +@@ -720,18 +724,24 @@
1049 + if (!XGetGeometry(XtDisplayOfObject(w),
1050 + entry->sme_bsb.left_bitmap, &root, &x, &y,
1051 + &width, &height, &bw, &entry->sme_bsb.left_depth)) {
1052 +- (void) sprintf(buf, "Xaw SmeBSB Object: %s %s \"%s\".",
1053 +- "Could not get Left Bitmap",
1054 +- "geometry information for menu entry",
1056 +- XtAppError(XtWidgetToApplicationContext(w), buf);
1057 ++ char *err1 = "Xaw SmeBSB Object: Could not get Left Bitmap geometry information for menu entry ";
1058 ++ len = strlen(err1) + strlen(XtName(w)) + 3 + 1;
1059 ++ pbuf = XtStackAlloc(len, buf);
1060 ++ if (pbuf == NULL) return;
1061 ++ sprintf(pbuf, "%s\"%s\".", err1, XtName(w));
1062 ++ XtAppError(XtWidgetToApplicationContext(w), pbuf);
1063 ++ XtStackFree(pbuf, buf);
1066 + if (entry->sme_bsb.left_depth != 1) {
1067 +- (void) sprintf(buf, "Xaw SmeBSB Object: %s \"%s\" %s.",
1068 +- "Left Bitmap of entry", XtName(w),
1069 +- "is not one bit deep");
1070 +- XtAppError(XtWidgetToApplicationContext(w), buf);
1071 ++ char *err1 = "Xaw SmeBSB Object: Left Bitmap of entry ";
1072 ++ char *err2 = " is not one bit deep.";
1073 ++ len = strlen(err1) + strlen(err2) + strlen(XtName(w)) + 2 + 1;
1074 ++ pbuf = XtStackAlloc(len, buf);
1075 ++ if (pbuf == NULL) return;
1076 ++ sprintf(pbuf, "%s\"%s\"%s", err1, XtName(w), err2);
1077 ++ XtAppError(XtWidgetToApplicationContext(w), pbuf);
1078 ++ XtStackFree(pbuf, buf);
1082 +@@ -745,18 +755,24 @@
1083 + if (!XGetGeometry(XtDisplayOfObject(w),
1084 + entry->sme_bsb.right_bitmap, &root, &x, &y,
1085 + &width, &height, &bw, &entry->sme_bsb.right_depth)) {
1086 +- (void) sprintf(buf, "Xaw SmeBSB Object: %s %s \"%s\".",
1087 +- "Could not get Right Bitmap",
1088 +- "geometry information for menu entry",
1090 +- XtAppError(XtWidgetToApplicationContext(w), buf);
1091 ++ char *err1 = "Xaw SmeBSB Object: Could not get Right Bitmap geometry information for menu entry ";
1092 ++ len = strlen(err1) + strlen(XtName(w)) + 3 + 1;
1093 ++ pbuf = XtStackAlloc(len, buf);
1094 ++ if (pbuf == NULL) return;
1095 ++ sprintf(pbuf, "%s\"%s\".", err1, XtName(w));
1096 ++ XtAppError(XtWidgetToApplicationContext(w), pbuf);
1097 ++ XtStackFree(pbuf, buf);
1100 + if (entry->sme_bsb.right_depth != 1) {
1101 +- (void) sprintf(buf, "Xaw SmeBSB Object: %s \"%s\" %s.",
1102 +- "Right Bitmap of entry", XtName(w),
1103 +- "is not one bit deep");
1104 +- XtAppError(XtWidgetToApplicationContext(w), buf);
1105 ++ char *err1 = "Xaw SmeBSB Object: Right Bitmap of entry ";
1106 ++ char *err2 = " is not one bit deep.";
1107 ++ len = strlen(err1) + strlen(err2) + strlen(XtName(w)) + 2 + 1;
1108 ++ pbuf = XtStackAlloc(len, buf);
1109 ++ if (pbuf == NULL) return;
1110 ++ sprintf(pbuf, "%s\"%s\"%s", err1, XtName(w), err2);
1111 ++ XtAppError(XtWidgetToApplicationContext(w), pbuf);
1112 ++ XtStackFree(pbuf, buf);
1116 diff -urN xc.org/debian/postinst xc/debian/postinst
1117 --- xc.org/debian/postinst 1970-01-01 01:00:00.000000000 +0100
1118 +++ xc/debian/postinst 2009-01-22 17:59:49.648848414 +0100
1130 diff -urN xc.org/debian/README.Debian xc/debian/README.Debian
1131 --- xc.org/debian/README.Debian 1970-01-01 01:00:00.000000000 +0100
1132 +++ xc/debian/README.Debian 2009-01-22 17:59:49.648848414 +0100
1137 +Xaw3d is not a transparent substitute of libXaw for various
1138 +incompatibilities. All programs which want a 3d look for Xaw
1139 +toolkit, need to link explicitly against this library and manage
1140 +minor problems properly.
1142 +Some hacks have been applied to upstream sources. This library is currently
1143 +not maintained upstream.
1145 +You can find other information about the beast in README.XAW3D.
1147 + -- Francesco P. Lovergine <frankie@debian.org>, Tue Apr 24 15:58:51 CEST 2007
1149 diff -urN xc.org/debian/rules xc/debian/rules
1150 --- xc.org/debian/rules 1970-01-01 01:00:00.000000000 +0100
1151 +++ xc/debian/rules 2009-01-22 17:59:49.612848452 +0100
1158 +#export DH_VERBOSE = 1
1160 +include /usr/share/dpatch/dpatch.make
1162 +ifneq (,$(findstring $(ARCH), $(COMPATARCHS)))
1164 +# Remove comment to enable libc5 compatibility.
1165 +# You need also to use control.oldlib instead of the standard one.
1168 +export DH_OPTIONS = -a
1170 +export DH_OPTIONS = -Nxaw3d -a
1176 +stamp-build: patch-stamp
1177 + rm -rf $(SOURCE)/X11 && install -m755 -d $(SOURCE)/X11
1178 + cd $(SOURCE) && ln -sf ../ X11/Xaw3d && xmkmf
1179 + $(MAKE) -C $(SOURCE) \
1180 + EXTRA_DEFINES="-D_REENTRANT -DARROW_SCROLLBAR" SHLIBDEF="-D_REENTRANT -DARROW_SCROLLBAR"
1183 +clean: myclean unpatch
1185 + rm -rf $(SOURCE)/X11 $(COMPAT) lib/Xaw3d/laygram.h
1186 + cd $(SOURCE) && [ -f $(SOURCE)/Makefile ] || xmkmf
1187 + $(MAKE) -C $(SOURCE) clean
1188 + dh_clean stamp-build `find . -name Makefile`
1190 +install: DH_OPTIONS=
1191 +install: stamp-build
1196 + $(MAKE) -C $(SOURCE) install \
1197 + DESTDIR=$(CURDIR)/debian/tmp INCDIR=/usr/include
1199 +binary: binary-indep binary-arch
1202 +# There are no architecture-independent packages here.
1204 +binary-arch: install
1207 + dh_install --source $(CURDIR)/debian/tmp
1208 + dh_installexamples $(SOURCE)/app-defaults
1209 + dh_installdocs $(SOURCE)/README.XAW3D
1210 + dh_installchangelogs
1221 +.PHONY: build clean install binary binary-arch binary-indep unpatch myclean patch
1222 diff -urN xc.org/debian/shlibs xc/debian/shlibs
1223 --- xc.org/debian/shlibs 1970-01-01 01:00:00.000000000 +0100
1224 +++ xc/debian/shlibs 2009-01-22 17:59:49.652849442 +0100
1226 +libXaw3d 6 xaw3dg (>= 1.5+E-1)
1227 diff -urN xc.org/debian/xaw3dg-dev.install xc/debian/xaw3dg-dev.install
1228 --- xc.org/debian/xaw3dg-dev.install 1970-01-01 01:00:00.000000000 +0100
1229 +++ xc/debian/xaw3dg-dev.install 2009-01-22 17:59:49.652849442 +0100
1231 +usr/include/* usr/include
1232 +usr/lib/*.a usr/lib
1233 +usr/lib/*.so usr/lib
1234 diff -urN xc.org/debian/xaw3dg.install xc/debian/xaw3dg.install
1235 --- xc.org/debian/xaw3dg.install 1970-01-01 01:00:00.000000000 +0100
1236 +++ xc/debian/xaw3dg.install 2009-01-22 17:59:49.652849442 +0100
1238 +usr/lib/*.so.* usr/lib
1239 diff -urN xc.org/debian/xaw3d.postinst xc/debian/xaw3d.postinst
1240 --- xc.org/debian/xaw3d.postinst 1970-01-01 01:00:00.000000000 +0100
1241 +++ xc/debian/xaw3d.postinst 2009-01-22 17:59:49.612848452 +0100
1244 +#this script was written by Joey Hess
1246 +XAWREPLDIR=/usr/lib/libc5-compat/Xaw3d
1247 +LDSOCONF=/etc/ld.so.conf
1251 + tmpfile=`tempfile` || tmpfile=/var/run/`basename $0`.$$
1253 + if ! grep -q $XAWREPLDIR $LDSOCONF ; then
1254 + (echo $XAWREPLDIR; grep -v $XAWREPLDIR $LDSOCONF) >$tmpfile && \
1255 + ( cat $tmpfile > $LDSOCONF ; rm -f $tmpfile )
1262 diff -urN xc.org/debian/xaw3d.postrm xc/debian/xaw3d.postrm
1263 --- xc.org/debian/xaw3d.postrm 1970-01-01 01:00:00.000000000 +0100
1264 +++ xc/debian/xaw3d.postrm 2009-01-22 17:59:49.648848414 +0100
1268 +#this script was written by Joey Hess (slight mods by joost)
1272 +XAWREPLDIR=/usr/lib/libc5-compat/Xaw3d
1273 +LDSOCONF=/etc/ld.so.conf
1277 + mkdir $XAWREPLDIR 2>/dev/null || true
1281 + tmpfile=`tempfile` || tmpfile=/etc/`basename $0`.$$
1282 + grep -v $XAWREPLDIR $LDSOCONF >$tmpfile && \
1283 + ( cat $tmpfile > $LDSOCONF ; rm $tmpfile )
1284 + rmdir 2>/dev/null $XAWREPLDIR || true
1289 diff -urN xc.org/debian/xaw3d.shlibs xc/debian/xaw3d.shlibs
1290 --- xc.org/debian/xaw3d.shlibs 1970-01-01 01:00:00.000000000 +0100
1291 +++ xc/debian/xaw3d.shlibs 2009-01-22 17:59:49.648848414 +0100
1294 +libXaw3d 6 xaw3d (>= 1.5+E-1)
1295 diff -urN xc.org/lib/Xaw3d/AsciiSrc.c xc/lib/Xaw3d/AsciiSrc.c
1296 --- xc.org/lib/Xaw3d/AsciiSrc.c 2000-11-27 14:19:36.000000000 +0100
1297 +++ xc/lib/Xaw3d/AsciiSrc.c 2009-01-22 17:59:49.592848829 +0100
1299 #include <X11/Xaw3d/MultiSrcP.h>
1302 +#include <sys/types.h>
1303 +#include <sys/stat.h>
1306 #if (defined(ASCII_STRING) || defined(ASCII_DISK))
1307 # include <X11/Xaw3d/AsciiText.h> /* for Widget Classes. */
1310 +#include <sys/types.h>
1311 +#include <sys/stat.h>
1314 /****************************************************************
1316 @@ -1007,7 +1013,9 @@
1320 - char * open_mode = NULL;
1321 + mode_t open_mode = 0;
1322 + const char *fdopen_mode = NULL;
1325 char fileName[TMPSIZ];
1327 @@ -1049,7 +1057,8 @@
1328 XtErrorMsg("NoFile", "asciiSourceCreate", "XawError",
1329 "Creating a read only disk widget and no file specified.",
1332 + open_mode = O_RDONLY;
1333 + fdopen_mode = "r";
1337 @@ -1057,9 +1066,17 @@
1338 src->ascii_src.string = fileName;
1339 (void) tmpnam(src->ascii_src.string);
1340 src->ascii_src.is_tempfile = TRUE;
1344 + open_mode = O_WRONLY | O_CREAT | O_EXCL;
1345 + fdopen_mode = "w";
1347 +/* O_NOFOLLOW is a BSD & Linux extension */
1349 + open_mode = O_RDWR | O_NOFOLLOW;
1351 + open_mode = O_RDWR; /* unsafe; subject to race conditions */
1353 + fdopen_mode = "r+";
1357 XtErrorMsg("badMode", "asciiSourceCreate", "XawError",
1358 @@ -1078,11 +1095,14 @@
1361 if (!src->ascii_src.is_tempfile) {
1362 - if ((file = fopen(src->ascii_src.string, open_mode)) != 0) {
1363 - (void) fseek(file, (Off_t)0, 2);
1364 - src->ascii_src.length = (XawTextPosition) ftell(file);
1367 + if ((fd = open(src->ascii_src.string, open_mode, 0666))) {
1368 + if ((file = fdopen(fd, fdopen_mode)) != NULL) {
1369 + (void)fseek(file, 0, SEEK_END);
1370 + src->ascii_src.length = (XawTextPosition)ftell(file);
1376 Cardinal num_params = 2;
1378 @@ -1094,7 +1114,7 @@
1381 src->ascii_src.length = 0;
1382 - return((FILE *)NULL);
1387 diff -urN xc.org/lib/Xaw3d/AsciiSrcP.h xc/lib/Xaw3d/AsciiSrcP.h
1388 --- xc.org/lib/Xaw3d/AsciiSrcP.h 1996-10-15 16:41:18.000000000 +0200
1389 +++ xc/lib/Xaw3d/AsciiSrcP.h 2009-01-22 17:59:49.596893228 +0100
1392 #define TMPSIZ L_tmpnam
1394 -#define TMPSIZ 32 /* bytes to allocate for tmpnam */
1396 +#define TMPSIZ PATH_MAX
1398 +#define TMPSIZ 1024 /* bytes to allocate for tmpnam */
1402 #define MAGIC_VALUE ((XawTextPosition) -1) /* Magic value. */
1403 diff -urN xc.org/lib/Xaw3d/Box.c xc/lib/Xaw3d/Box.c
1404 --- xc.org/lib/Xaw3d/Box.c 1996-10-15 16:41:18.000000000 +0200
1405 +++ xc/lib/Xaw3d/Box.c 2009-01-22 18:01:31.712849163 +0100
1406 @@ -353,8 +353,16 @@
1408 width = preferred_width;
1409 do { /* find some width big enough to stay within this height */
1412 if (width > constraint->width) width = constraint->width;
1414 + if (width > constraint->width/2) { /* avoid short int overflow */
1415 + width = constraint->width;
1420 DoLayout(w, width, 0, &preferred_width, &preferred_height, FALSE);
1421 } while (preferred_height > constraint->height &&
1422 width < constraint->width);
1423 diff -urN xc.org/lib/Xaw3d/MenuButton.c xc/lib/Xaw3d/MenuButton.c
1424 --- xc.org/lib/Xaw3d/MenuButton.c 1996-10-15 16:41:20.000000000 +0200
1425 +++ xc/lib/Xaw3d/MenuButton.c 2009-01-22 17:59:49.608848820 +0100
1427 #include <X11/Xaw3d/XawInit.h>
1428 #include <X11/Xaw3d/MenuButtoP.h>
1430 +#include "XawAlloc.h"
1432 static void ClassInitialize();
1433 static void PopupMenu();
1435 @@ -179,9 +181,16 @@
1438 char error_buf[BUFSIZ];
1439 - (void) sprintf(error_buf, "MenuButton: %s %s.",
1440 - "Could not find menu widget named", mbw->menu_button.menu_name);
1441 - XtAppWarning(XtWidgetToApplicationContext(w), error_buf);
1442 + char *err1 = "MenuButton: Could not find menu widget named ";
1446 + len = strlen(err1) + strlen(mbw->menu_button.menu_name) + 1 + 1;
1447 + perr = XtStackAlloc(len, error_buf);
1448 + if (perr == NULL) return;
1449 + sprintf(perr, "%s%s.", err1, mbw->menu_button.menu_name);
1450 + XtAppWarning(XtWidgetToApplicationContext(w), perr);
1451 + XtStackFree(perr, error_buf);
1454 if (!XtIsRealized(menu))
1455 diff -urN xc.org/lib/Xaw3d/MultiSrc.c xc/lib/Xaw3d/MultiSrc.c
1456 --- xc.org/lib/Xaw3d/MultiSrc.c 2000-11-27 14:19:36.000000000 +0100
1457 +++ xc/lib/Xaw3d/MultiSrc.c 2009-01-22 18:01:36.644848876 +0100
1462 +#include <sys/types.h>
1463 +#include <sys/stat.h>
1466 /****************************************************************
1470 if ( string_set || (old_src->multi_src.type != src->multi_src.type) ) {
1471 RemoveOldStringOrFile(old_src, string_set);
1472 + src->multi_src.allocated_string = old_src->multi_src.allocated_string;
1473 file = InitStringOrFile(src, string_set);
1475 /* Load pieces does this logic for us, but it shouldn't. Its messy.*/
1476 @@ -1076,7 +1080,9 @@
1480 - char * open_mode = NULL;
1481 + mode_t open_mode = 0;
1482 + const char *fdopen_mode = NULL;
1485 char fileName[TMPSIZ];
1486 Display *d = XtDisplayOfObject((Widget)src);
1487 @@ -1127,7 +1133,8 @@
1488 XtErrorMsg("NoFile", "multiSourceCreate", "XawError",
1489 "Creating a read only disk widget and no file specified.",
1492 + open_mode = O_RDONLY;
1493 + fdopen_mode = "r";
1497 @@ -1140,9 +1147,17 @@
1499 (void) tmpnam(src->multi_src.string);
1500 src->multi_src.is_tempfile = TRUE;
1504 + open_mode = O_WRONLY | O_CREAT | O_EXCL;
1505 + fdopen_mode = "w";
1507 +/* O_NOFOLLOW is a BSD & Linux extension */
1509 + open_mode = O_RDWR | O_NOFOLLOW;
1511 + open_mode = O_RDWR; /* unsafe; subject to race conditions */
1513 + fdopen_mode = "r+";
1517 XtErrorMsg("badMode", "multiSourceCreate", "XawError",
1518 @@ -1161,11 +1176,14 @@
1521 if (!src->multi_src.is_tempfile) {
1522 - if ((file = fopen(src->multi_src.string, open_mode)) != 0) {
1523 - (void) fseek(file, (Off_t)0, 2);
1524 - src->multi_src.length = ftell (file);
1527 + if ((fd = open(src->multi_src.string, open_mode, 0666))) {
1528 + if ((file = fdopen(fd, fdopen_mode)) != NULL) {
1529 + (void)fseek(file, 0, SEEK_END);
1530 + src->multi_src.length = (XawTextPosition)ftell(file);
1536 Cardinal num_params = 2;
1538 @@ -1177,7 +1195,7 @@
1541 src->multi_src.length = 0;
1542 - return((FILE *)NULL);
1547 diff -urN xc.org/lib/Xaw3d/MultiSrcP.h xc/lib/Xaw3d/MultiSrcP.h
1548 --- xc.org/lib/Xaw3d/MultiSrcP.h 1996-10-15 16:41:21.000000000 +0200
1549 +++ xc/lib/Xaw3d/MultiSrcP.h 2009-01-22 17:59:49.604848770 +0100
1550 @@ -113,7 +113,11 @@
1552 #define TMPSIZ L_tmpnam
1554 -#define TMPSIZ 32 /* bytes to allocate for tmpnam */
1556 +#define TMPSIZ PATH_MAX
1558 +#define TMPSIZ 1024 /* bytes to allocate for tmpnam */
1562 #define MAGIC_VALUE ((XawTextPosition) -1) /* Magic value. */
1563 diff -urN xc.org/lib/Xaw3d/Scrollbar.c xc/lib/Xaw3d/Scrollbar.c
1564 --- xc.org/lib/Xaw3d/Scrollbar.c 2003-02-10 18:22:26.000000000 +0100
1565 +++ xc/lib/Xaw3d/Scrollbar.c 2009-01-22 17:59:49.600847742 +0100
1566 @@ -1049,6 +1049,7 @@
1567 if (!event->xmotion.same_screen) return;
1569 ExtractPosition (event, &x, &y);
1571 loc = FractionLoc (sbw, x, y);
1572 t = sbw->scrollbar.top;
1573 s = sbw->scrollbar.shown;
1574 diff -urN xc.org/lib/Xaw3d/Simple.c xc/lib/Xaw3d/Simple.c
1575 --- xc.org/lib/Xaw3d/Simple.c 2000-11-27 14:19:36.000000000 +0100
1576 +++ xc/lib/Xaw3d/Simple.c 2009-01-22 17:59:49.608848820 +0100
1578 #include <X11/Xaw3d/SimpleP.h>
1579 #include <X11/Xmu/Drawing.h>
1581 +#include "XawAlloc.h"
1583 #define offset(field) XtOffsetOf(SimpleRec, simple.field)
1585 static XtResource resources[] = {
1586 @@ -148,11 +150,17 @@
1588 if (c->simple_class.change_sensitive == NULL) {
1591 - (void) sprintf(buf,
1592 - "%s Widget: The Simple Widget class method 'change_sensitive' is undefined.\nA function must be defined or inherited.",
1593 - c->core_class.class_name);
1596 + char *msg1 = " Widget: The Simple Widget class method 'change_sensitive' is undefined.\nA function must be defined or inherited.";
1599 + len = strlen(msg1) + strlen(c->core_class.class_name) + 1;
1600 + pbuf = XtStackAlloc(len, buf);
1601 + if (pbuf != NULL) {
1602 + sprintf(pbuf, "%s%s", c->core_class.class_name, msg1);
1604 + XtStackFree(pbuf, buf);
1606 c->simple_class.change_sensitive = ChangeSensitive;
1609 diff -urN xc.org/lib/Xaw3d/SimpleMenu.c xc/lib/Xaw3d/SimpleMenu.c
1610 --- xc.org/lib/Xaw3d/SimpleMenu.c 2003-02-17 07:45:07.000000000 +0100
1611 +++ xc/lib/Xaw3d/SimpleMenu.c 2009-01-22 17:59:49.592848829 +0100
1613 #include <X11/Xmu/Initer.h>
1614 #include <X11/Xmu/CharSet.h>
1616 +#include "XawAlloc.h"
1618 #define streq(a, b) ( strcmp((a), (b)) == 0 )
1620 #define offset(field) XtOffsetOf(SimpleMenuRec, simple_menu.field)
1621 @@ -755,9 +757,17 @@
1623 if ( (menu = FindMenu(w, params[0])) == NULL) {
1624 char error_buf[BUFSIZ];
1625 - (void) sprintf(error_buf, "%s '%s'",
1626 - "Xaw - SimpleMenuWidget: could not find menu named: ", params[0]);
1627 - XtAppWarning(XtWidgetToApplicationContext(w), error_buf);
1628 + char *err1 = "Xaw - SimpleMenuWidget: could not find menu named: ";
1632 + len = strlen(err1) + strlen(params[0]) + 2 + 1;
1633 + perr = XtStackAlloc(len, error_buf);
1636 + sprintf(perr, "%s'%s'", err1, params[0]);
1637 + XtAppWarning(XtWidgetToApplicationContext(w), perr);
1638 + XtStackFree(perr, error_buf);
1642 diff -urN xc.org/lib/Xaw3d/SmeBSB.c xc/lib/Xaw3d/SmeBSB.c
1643 --- xc.org/lib/Xaw3d/SmeBSB.c 2003-02-16 20:18:28.000000000 +0100
1644 +++ xc/lib/Xaw3d/SmeBSB.c 2009-01-22 18:01:39.716848434 +0100
1646 #include <X11/Xaw3d/Cardinals.h>
1649 +#include "XawAlloc.h"
1651 /* needed for abs() */
1652 #ifndef X_NOT_STDC_ENV
1656 unsigned int width, height, bw;
1663 @@ -720,18 +724,24 @@
1664 if (!XGetGeometry(XtDisplayOfObject(w),
1665 entry->sme_bsb.left_bitmap, &root, &x, &y,
1666 &width, &height, &bw, &entry->sme_bsb.left_depth)) {
1667 - (void) sprintf(buf, "Xaw SmeBSB Object: %s %s \"%s\".",
1668 - "Could not get Left Bitmap",
1669 - "geometry information for menu entry",
1671 - XtAppError(XtWidgetToApplicationContext(w), buf);
1672 + char *err1 = "Xaw SmeBSB Object: Could not get Left Bitmap geometry information for menu entry ";
1673 + len = strlen(err1) + strlen(XtName(w)) + 3 + 1;
1674 + pbuf = XtStackAlloc(len, buf);
1675 + if (pbuf == NULL) return;
1676 + sprintf(pbuf, "%s\"%s\".", err1, XtName(w));
1677 + XtAppError(XtWidgetToApplicationContext(w), pbuf);
1678 + XtStackFree(pbuf, buf);
1681 if (entry->sme_bsb.left_depth != 1) {
1682 - (void) sprintf(buf, "Xaw SmeBSB Object: %s \"%s\" %s.",
1683 - "Left Bitmap of entry", XtName(w),
1684 - "is not one bit deep");
1685 - XtAppError(XtWidgetToApplicationContext(w), buf);
1686 + char *err1 = "Xaw SmeBSB Object: Left Bitmap of entry ";
1687 + char *err2 = " is not one bit deep.";
1688 + len = strlen(err1) + strlen(err2) + strlen(XtName(w)) + 2 + 1;
1689 + pbuf = XtStackAlloc(len, buf);
1690 + if (pbuf == NULL) return;
1691 + sprintf(pbuf, "%s\"%s\"%s", err1, XtName(w), err2);
1692 + XtAppError(XtWidgetToApplicationContext(w), pbuf);
1693 + XtStackFree(pbuf, buf);
1697 @@ -745,18 +755,24 @@
1698 if (!XGetGeometry(XtDisplayOfObject(w),
1699 entry->sme_bsb.right_bitmap, &root, &x, &y,
1700 &width, &height, &bw, &entry->sme_bsb.right_depth)) {
1701 - (void) sprintf(buf, "Xaw SmeBSB Object: %s %s \"%s\".",
1702 - "Could not get Right Bitmap",
1703 - "geometry information for menu entry",
1705 - XtAppError(XtWidgetToApplicationContext(w), buf);
1706 + char *err1 = "Xaw SmeBSB Object: Could not get Right Bitmap geometry information for menu entry ";
1707 + len = strlen(err1) + strlen(XtName(w)) + 3 + 1;
1708 + pbuf = XtStackAlloc(len, buf);
1709 + if (pbuf == NULL) return;
1710 + sprintf(pbuf, "%s\"%s\".", err1, XtName(w));
1711 + XtAppError(XtWidgetToApplicationContext(w), pbuf);
1712 + XtStackFree(pbuf, buf);
1715 if (entry->sme_bsb.right_depth != 1) {
1716 - (void) sprintf(buf, "Xaw SmeBSB Object: %s \"%s\" %s.",
1717 - "Right Bitmap of entry", XtName(w),
1718 - "is not one bit deep");
1719 - XtAppError(XtWidgetToApplicationContext(w), buf);
1720 + char *err1 = "Xaw SmeBSB Object: Right Bitmap of entry ";
1721 + char *err2 = " is not one bit deep.";
1722 + len = strlen(err1) + strlen(err2) + strlen(XtName(w)) + 2 + 1;
1723 + pbuf = XtStackAlloc(len, buf);
1724 + if (pbuf == NULL) return;
1725 + sprintf(pbuf, "%s\"%s\"%s", err1, XtName(w), err2);
1726 + XtAppError(XtWidgetToApplicationContext(w), pbuf);
1727 + XtStackFree(pbuf, buf);
1731 diff -urN xc.org/lib/Xaw3d/StripChart.c xc/lib/Xaw3d/StripChart.c
1732 --- xc.org/lib/Xaw3d/StripChart.c 2003-02-10 18:18:00.000000000 +0100
1733 +++ xc/lib/Xaw3d/StripChart.c 2009-01-22 17:59:49.596893228 +0100
1734 @@ -315,7 +315,15 @@
1735 if (w->strip_chart.points != NULL) {
1736 w->strip_chart.points[0].x = w->strip_chart.interval + s;
1737 XDrawPoints(XtDisplay(w), XtWindow(w), w->strip_chart.hiGC,
1738 - w->strip_chart.points, w->strip_chart.scale,
1742 + * w->strip_chart.points, w->strip_chart.scale,
1744 + * this to avoid a subdle bug of extra spurios scan
1745 + * line in this widget.
1747 + w->strip_chart.points, w->strip_chart.scale - 1,
1751 diff -urN xc.org/lib/Xaw3d/Text.c xc/lib/Xaw3d/Text.c
1752 --- xc.org/lib/Xaw3d/Text.c 2003-02-10 18:28:13.000000000 +0100
1753 +++ xc/lib/Xaw3d/Text.c 2009-01-22 17:59:49.604848770 +0100
1755 #include <X11/Xfuncs.h>
1756 #include <ctype.h> /* for isprint() */
1758 +#include "XawAlloc.h"
1761 #define MAX_LEN_CT 6 /* for sequence: ESC $ ( A \xx \xx */
1764 TextWidget ctx = (TextWidget) new;
1765 char error_buf[BUFSIZ];
1767 + char *perr; /* frankie */
1768 + size_t len; /* frankie */
1770 ctx->text.threeD = XtVaCreateWidget("threeD", threeDWidgetClass, new,
1772 @@ -568,10 +572,17 @@
1773 if (ctx->text.scroll_vert != XawtextScrollNever)
1774 if ( (ctx->text.resize == XawtextResizeHeight) ||
1775 (ctx->text.resize == XawtextResizeBoth) ) {
1776 - (void) sprintf(error_buf, "Xaw Text Widget %s:\n %s %s.", ctx->core.name,
1777 - "Vertical scrolling not allowed with height resize.\n",
1778 - "Vertical scrolling has been DEACTIVATED.");
1779 - XtAppWarning(XtWidgetToApplicationContext(new), error_buf);
1780 + char *err1 = "Xaw Text Widget ";
1781 + char *err2 = ":\nVertical scrolling not allowed with height resize.\n";
1782 + char *err3 = "Vertical scrolling has been DEACTIVATED.";
1783 + len = strlen(err1) + strlen(err2) + strlen(err3) +
1784 + strlen(ctx->core.name) + 1;
1785 + perr = XtStackAlloc(len, error_buf);
1786 + if (perr != NULL) {
1787 + (void) sprintf(perr, "%s%s%s%s", err1, ctx->core.name, err2, err3);
1788 + XtAppWarning(XtWidgetToApplicationContext(new), perr);
1789 + XtStackFree(perr, error_buf);
1791 ctx->text.scroll_vert = XawtextScrollNever;
1793 else if (ctx->text.scroll_vert == XawtextScrollAlways)
1794 @@ -579,18 +590,32 @@
1796 if (ctx->text.scroll_horiz != XawtextScrollNever)
1797 if (ctx->text.wrap != XawtextWrapNever) {
1798 - (void) sprintf(error_buf, "Xaw Text Widget %s:\n %s %s.", ctx->core.name,
1799 - "Horizontal scrolling not allowed with wrapping active.\n",
1800 - "Horizontal scrolling has been DEACTIVATED.");
1801 - XtAppWarning(XtWidgetToApplicationContext(new), error_buf);
1802 + char *err1 = "Xaw Text Widget ";
1803 + char *err2 = ":\nHorizontal scrolling not allowed with wrapping active.";
1804 + char *err3 = "\nHorizontal scrolling has been DEACTIVATED.";
1805 + len = strlen(err1) + strlen(err2) + strlen(err3) +
1806 + strlen(ctx->core.name) + 1;
1807 + perr = XtStackAlloc(len, error_buf);
1808 + if (perr != NULL) {
1809 + (void) sprintf(perr, "%s%s%s%s", err1, ctx->core.name, err2, err3);
1810 + XtAppWarning(XtWidgetToApplicationContext(new), perr);
1811 + XtStackFree(perr, error_buf);
1813 ctx->text.scroll_horiz = XawtextScrollNever;
1815 else if ( (ctx->text.resize == XawtextResizeWidth) ||
1816 (ctx->text.resize == XawtextResizeBoth) ) {
1817 - (void) sprintf(error_buf, "Xaw Text Widget %s:\n %s %s.", ctx->core.name,
1818 - "Horizontal scrolling not allowed with width resize.\n",
1819 - "Horizontal scrolling has been DEACTIVATED.");
1820 - XtAppWarning(XtWidgetToApplicationContext(new), error_buf);
1821 + char *err1 = "Xaw Text Widget ";
1822 + char *err2 = ":\nHorizontal scrolling not allowed with width resize.\n";
1823 + char *err3 = "Horizontal scrolling has been DEACTIVATED.";
1824 + len = strlen(err1) + strlen(err2) + strlen(err3) +
1825 + strlen(ctx->core.name) + 1;
1826 + perr = XtStackAlloc(len, error_buf);
1827 + if (perr != NULL) {
1828 + (void) sprintf(perr, "%s%s%s%s", err1, ctx->core.name, err2, err3);
1829 + XtAppWarning(XtWidgetToApplicationContext(new), perr);
1830 + XtStackFree(perr, error_buf);
1832 ctx->text.scroll_horiz = XawtextScrollNever;
1834 else if (ctx->text.scroll_horiz == XawtextScrollAlways)
1835 diff -urN xc.org/lib/Xaw3d/TextPop.c xc/lib/Xaw3d/TextPop.c
1836 --- xc.org/lib/Xaw3d/TextPop.c 2000-11-27 14:19:36.000000000 +0100
1837 +++ xc/lib/Xaw3d/TextPop.c 2009-01-22 17:59:49.600847742 +0100
1839 #include <X11/Xos.h> /* for O_RDONLY */
1842 +#include "XawAlloc.h"
1844 #ifdef X_NOT_STDC_ENV
1848 struct SearchAndReplace * search;
1853 Widget tw = XtParent(search->search_popup);
1854 XawTextPosition pos;
1855 XawTextScanDirection dir;
1856 @@ -835,9 +839,20 @@
1857 /* The Raw string in find.ptr may be WC I can't use here, so I re - call
1858 GetString to get a tame version. */
1860 - if (pos == XawTextSearchError)
1861 - (void) sprintf( msg, "Could not find string ``%s''.", GetString( search->search_text ) );
1863 + if (pos == XawTextSearchError) {
1864 + char *msg1 = "Could not find string ``";
1865 + char *msg2 = "''.";
1866 + len = strlen(msg1) + strlen(msg2) +
1867 + strlen(GetString( search->search_text )) + 1;
1868 + pmsg = XtStackAlloc(len, msg);
1869 + if (pmsg != NULL) {
1870 + (void) sprintf( pmsg, "%s%s%s", msg1, GetString( search->search_text ),
1874 + (void) sprintf( pmsg, "Could not find string");
1877 if (dir == XawsdRight)
1878 XawTextSetInsertionPoint( tw, pos + text.length);
1883 XawTextUnsetSelection(tw);
1884 - SetSearchLabels(search, msg, "", TRUE);
1885 + SetSearchLabels(search, pmsg, "", TRUE);
1886 + XtStackFree(pmsg, msg);
1890 @@ -982,13 +998,26 @@
1891 if ( (new_pos == XawTextSearchError) ) {
1896 + char *msg1 = "*** Error: Could not find string ``";
1897 + char *msg2 = "''. ***";
1899 /* The Raw string in find.ptr may be WC I can't use here,
1900 so I call GetString to get a tame version.*/
1902 - (void) sprintf( msg, "%s %s %s", "*** Error: Could not find string ``",
1903 - GetString( search->search_text ), "''. ***");
1904 - SetSearchLabels(search, msg, "", TRUE);
1905 + len = strlen(msg1) + strlen(msg2) +
1906 + strlen(GetString( search->search_text )) + 1;
1907 + pmsg = XtStackAlloc(len, msg);
1908 + if (pmsg != NULL) {
1909 + (void) sprintf( pmsg, "%s%s%s", msg1,
1910 + GetString( search->search_text ), msg2);
1913 + (void) sprintf(pmsg, "*** Error: Could not find string ***");
1915 + SetSearchLabels(search, pmsg, "", TRUE);
1916 + XtStackFree(pmsg, msg);
1920 @@ -1011,9 +1040,22 @@
1922 if (XawTextReplace(tw, pos, end_pos, &replace) != XawEditDone) {
1925 - (void) sprintf( msg, "'%s' with '%s'. ***", find.ptr, replace.ptr);
1928 + char *msg1 = "' with '";
1929 + char *msg2 = "'. ***";
1931 + len = 1 + strlen(msg1) + strlen(msg2) + strlen(find.ptr) +
1932 + strlen(replace.ptr) + 1;
1933 + pmsg = XtStackAlloc(len, msg);
1934 + if (pmsg != NULL) {
1935 + (void) sprintf( pmsg, "`%s%s%s%s", find.ptr, msg1, replace.ptr, msg2);
1938 + (void) sprintf(pmsg, "string ***");
1940 SetSearchLabels(search, "*** Error while replacing", msg, TRUE);
1941 + XtStackFree(pmsg, msg);
1945 @@ -1164,13 +1206,20 @@
1952 - (void) sprintf(buf, "%s.%s", FORM_NAME, name);
1953 + len = strlen(FORM_NAME) + strlen(name) + 2;
1954 + pbuf = XtStackAlloc(len, buf);
1955 + if (pbuf == NULL) return FALSE;
1956 + (void) sprintf(pbuf, "%s.%s", FORM_NAME, name);
1958 - if ( (temp_widget = XtNameToWidget(shell, buf)) != NULL) {
1959 + if ( (temp_widget = XtNameToWidget(shell, pbuf)) != NULL) {
1960 SetResource(temp_widget, res_name, value);
1961 + XtStackFree(pbuf, buf);
1964 + XtStackFree(pbuf, buf);
1968 diff -urN xc.org/lib/Xaw3d/XawAlloc.h xc/lib/Xaw3d/XawAlloc.h
1969 --- xc.org/lib/Xaw3d/XawAlloc.h 1970-01-01 01:00:00.000000000 +0100
1970 +++ xc/lib/Xaw3d/XawAlloc.h 2009-01-22 17:59:49.608848820 +0100
1972 +/* $XFree86: xc/lib/Xaw/XawAlloc.h,v 1.1.2.1 1998/05/16 09:05:23 dawes Exp $ */
1974 +#define XtStackAlloc(size, stack_cache_array) \
1975 + ((size) <= sizeof(stack_cache_array) \
1976 + ? (XtPointer)(stack_cache_array) \
1977 + : XtMalloc((unsigned)(size)))
1979 +#define XtStackFree(pointer, stack_cache_array) \
1980 + if ((pointer) != ((XtPointer)(stack_cache_array))) XtFree(pointer); else
1982 diff -urN xc.org/lib/Xaw3d/XawI18n.h xc/lib/Xaw3d/XawI18n.h
1983 --- xc.org/lib/Xaw3d/XawI18n.h 1996-10-15 16:41:26.000000000 +0200
1984 +++ xc/lib/Xaw3d/XawI18n.h 2009-01-22 17:59:49.608848820 +0100
1987 ********************************************************/
1989 +/* Mod for Debian by Joey Hess, do not include widec.h */
1995 #define wcscpy(d,s) wscpy(d,s)
1996 #define wcsncpy(d,s,l) wsncpy(d,s,l)
2002 diff -urN xc.org/Xdefault xc/Xdefault
2003 --- xc.org/Xdefault 1970-01-01 01:00:00.000000000 +0100
2004 +++ xc/Xdefault 2009-01-22 17:59:49.588848848 +0100
2006 +!this is an example of a .Xdefaults file to be used with the Xaw3d
2009 +! To obtain an appearance similar to another well known widget set, use the
2010 +! following resources:
2011 +*background: LightSkyBlue
2012 +*shapeStyle: Rectangle
2013 +*beNiceToColormap: False
2015 +! By default, Label widgets do not have shadows drawn for them. You can
2016 +! force shadows to be drawn for specifying:
2017 +*Label*shadowWidth: 2
2019 +!If you'd like the default behavior (i.e. not 3-D) on pulldown menus, use:
2020 +! (uncomment next line:)
2021 +!*SmeBSB*shadowWidth: 0