]> git.pld-linux.org Git - packages/Xaw3d.git/commitdiff
- from debian auto/th/Xaw3d-1_5E-7
authorArkadiusz Miśkiewicz <arekm@maven.pl>
Thu, 22 Jan 2009 17:08:48 +0000 (17:08 +0000)
committercvs2git <feedback@pld-linux.org>
Sun, 24 Jun 2012 12:13:13 +0000 (12:13 +0000)
Changed files:
    Xaw3d-debian.patch -> 1.1

Xaw3d-debian.patch [new file with mode: 0644]

diff --git a/Xaw3d-debian.patch b/Xaw3d-debian.patch
new file mode 100644 (file)
index 0000000..510d2a9
--- /dev/null
@@ -0,0 +1,2022 @@
+diff -urN xc.org/compat.im xc/compat.im
+--- xc.org/compat.im   1970-01-01 01:00:00.000000000 +0100
++++ xc/compat.im       2009-01-22 17:59:49.588848848 +0100
+@@ -0,0 +1,248 @@
++XCOMM $XConsortium: Imakefile,v 1.78 91/09/18 14:28:23 rws Exp $
++
++#define DoSharedLib SharedLibXaw
++#define DoDebugLib DebugLibXaw 
++#define DoProfileLib ProfileLibXaw 
++#define HasSharedData YES
++#define LibName Xaw3d
++#define SoRev SOXAWREV
++#define IncSubdir Xaw3d
++
++#ifdef LinuxArchitecture
++#JUMP_ROOT_Xaw3d = $(AWIDGETSRC)3d
++#JUMP_IS_HOST_Xaw3d = YES
++#JUMP_STUBLIBS_Xaw3d = libXaw3d.sa
++#JUMP_SUBDIRS_Xaw3d = $(JUMP_ROOT_Xt)
++#JUMP_DIR_Xaw3d = $(JUMP_ROOT_Xaw3d)/shared
++#JUMP_VARS_Xaw3d = $(JUMP_ROOT_Xaw3d)/jump_vars
++#JUMP_FUNCS_Xaw3d = $(JUMP_ROOT_Xaw3d)/jump_funcs
++#JUMP_IGNORE_Xaw3d = $(JUMP_ROOT_Xaw3d)/jump_ignore
++#JUMP_EXPORT_Xaw3d = $(JUMP_DIR_Xaw3d)/jump.vars
++#JUMP_IMPORT_Xaw3d = $(JUMP_EXPORT_Xt) $(JUMP_EXPORT_X11)
++#JUMP_ADDRESS_Xaw3d = 0x60300000
++#JUMP_JUMPTABLESIZE_Xaw3d = 0x4000
++#JUMP_GOTSIZE_Xaw3d = 4096
++#JUMP_STUBNAMES_Xaw3d = libXaw3d
++#JUMP_STUBS_IMPORT_Xaw3d = $(JUMP_STUBS_IMPORT_X11)
++#JUMP_LDLIBS_Xaw3d = $(JUMP_ROOT_Xt)/libXt.sa $(JUMP_ROOT_Xt)/libXmu.sa \
++#        $(JUMP_ROOT_Xt)/libXext.sa $(JUMP_ROOT_X11)/libX11.sa \
++#        $(JUMP_LDLIBS_libc)
++#endif
++
++#ifdef SharedXawReqs
++REQUIREDLIBS = SharedXawReqs
++#endif
++
++DEFINES = XawI18nDefines
++
++       LINTLIBS = $(LINTXLIB) $(LINTXTOOL)
++
++#  EXTRA_DEFINES = -DARROW_SCROLLBAR -DUSEGRAY
++
++  EXTRA_INCLUDES = -I.
++
++HEADERS = \
++      AllWidgets.h \
++      AsciiSink.h \
++      AsciiSinkP.h \
++      AsciiSrc.h \
++      AsciiSrcP.h \
++      AsciiText.h \
++      AsciiTextP.h \
++      Box.h \
++      BoxP.h \
++      Cardinals.h \
++      Command.h \
++      CommandP.h \
++      Dialog.h \
++      DialogP.h \
++      Form.h \
++      FormP.h \
++      Grip.h \
++      GripP.h \
++      Label.h \
++      LabelP.h \
++      Layout.h \
++      LayoutP.h \
++      List.h \
++      ListP.h \
++      MenuButton.h \
++      MenuButtoP.h \
++      MultiSrc.h \
++      MultiSrcP.h \
++      MultiSink.h \
++      MultiSinkP.h \
++      Paned.h \
++      PanedP.h \
++      Panner.h \
++      PannerP.h \
++      Porthole.h \
++      PortholeP.h \
++      Repeater.h \
++      RepeaterP.h \
++      Reports.h \
++      Scrollbar.h \
++      ScrollbarP.h \
++      Simple.h \
++      SimpleP.h \
++      SimpleMenu.h \
++      SimpleMenP.h \
++      Sme.h \
++      SmeP.h \
++      SmeBSB.h \
++      SmeBSBP.h \
++      SmeLine.h \
++      SmeLineP.h \
++      SmeThreeD.h \
++      SmeThreeDP.h \
++      StripChart.h \
++      StripCharP.h \
++      Template.c \
++      Template.h \
++      TemplateP.h \
++      Text.h \
++      TextP.h \
++      TextSink.h \
++      TextSinkP.h \
++      TextSrc.h \
++      TextSrcP.h \
++      ThreeD.h \
++      ThreeDP.h \
++      Toggle.h \
++      ToggleP.h \
++      Tree.h \
++      TreeP.h \
++      VendorEP.h \
++      Viewport.h \
++      ViewportP.h \
++      XawImP.h \
++      XawInit.h
++
++SRCS = \
++      AllWidgets.c \
++      AsciiSink.c \
++      AsciiSrc.c \
++      AsciiText.c \
++      Box.c \
++      Command.c \
++      Dialog.c \
++      Form.c \
++      Grip.c \
++      Label.c \
++      Layout.c \
++      List.c \
++      MenuButton.c \
++      MultiSrc.c \
++      MultiSink.c \
++      Paned.c \
++      Panner.c \
++      Porthole.c \
++      Repeater.c \
++      Scrollbar.c \
++      Simple.c \
++      SimpleMenu.c \
++      Sme.c \
++      SmeBSB.c \
++      SmeLine.c \
++      SmeThreeD.c \
++      StripChart.c \
++      Text.c \
++      TextSink.c \
++      TextSrc.c \
++      TextAction.c \
++      TextPop.c \
++      TextTr.c \
++      ThreeD.c \
++      Toggle.c \
++      Tree.c \
++      Vendor.c \
++      Viewport.c \
++      XawIm.c \
++      XawInit.c \
++      XawI18n.c \
++      sharedlib.c \
++      laygram.c \
++      laylex.c
++
++#if SharedDataSeparation
++UNSHAREDOBJS = AllWidgets.o sharedlib.o
++#endif
++
++OBJS = \
++      AllWidgets.o \
++      AsciiSink.o \
++      AsciiSrc.o \
++      AsciiText.o \
++      Box.o \
++      Command.o \
++      Dialog.o \
++      Form.o \
++      Grip.o \
++      Label.o \
++      Layout.o \
++      List.o \
++      MenuButton.o \
++      MultiSrc.o \
++      MultiSink.o \
++      Paned.o \
++      Panner.o \
++      Porthole.o \
++      Repeater.o \
++      Scrollbar.o \
++      Simple.o \
++      SimpleMenu.o \
++      Sme.o \
++      SmeBSB.o \
++      SmeLine.o \
++      SmeThreeD.o \
++      StripChart.o \
++      Text.o \
++      TextSink.o \
++      TextSrc.o \
++      TextAction.o \
++      TextPop.o \
++      TextTr.o \
++      ThreeD.o \
++      Toggle.o \
++      Tree.o \
++      Vendor.o \
++      Viewport.o \
++      XawIm.o \
++      XawI18n.o \
++      XawInit.o \
++      laygram.o \
++      laylex.o
++
++#include <Library.tmpl>
++
++#ifdef LexCmd
++LEX=LexCmd
++#endif
++#ifdef YaccCmd
++YACC=YaccCmd
++#endif
++
++all::
++
++depend:: laygram.c laylex.c
++
++#if DoSharedLib && SharedDataSeparation
++SpecialCObjectRule(sharedlib.o,NullParameter,$(SHLIBDEF))
++#endif
++
++laygram.c : laygram.y
++      $(YACC) -d laygram.y
++      sed 's/yy/LayYY/g' y.tab.c > laygram.c
++      sed 's/yy/LayYY/g' y.tab.h > laygram.h
++      $(RM) y.tab.c y.tab.h
++
++laylex.c: laylex.l
++      $(LEX) laylex.l
++      sed 's/yy/LayYY/g' lex.yy.c > laylex.c
++      $(RM) lex.yy.c
++
++clean::
++      $(RM) laygram.c laylex.c
++
++DependTarget()
++
+diff -urN xc.org/debian/changelog xc/debian/changelog
+--- xc.org/debian/changelog    1970-01-01 01:00:00.000000000 +0100
++++ xc/debian/changelog        2009-01-22 17:59:49.616847943 +0100
+@@ -0,0 +1,548 @@
++xaw3d (1.5+E-17) unstable; urgency=low
++
++  * Bumped replace to conflicts with pre -16 version. That's needed for 
++    moving of the .so link 
++   (closes: #492302)
++
++ -- Francesco Paolo Lovergine <frankie@debian.org>  Fri, 25 Jul 2008 09:47:14 +0200
++
++xaw3d (1.5+E-16) unstable; urgency=low
++
++  * New patch: MultiSrc.c.dpatch to avoid a double free bug with
++    internalionalized text. Patch taken from Xaw and used in Fedora.
++    (closes: #438737, #441304)
++  * Now using ${binary:Version} instead of ${Source-Version} in debian/control.
++  * Policy bumped to 3.8.0.
++  * Removed now superfluous libc-dev build-dependency.
++  * Symlink libXaw3d.so moved into -dev package.
++  * Moved xutils -> xutils-dev dependency in -dev package.
++    (closes: #485230)
++
++ -- Francesco Paolo Lovergine <frankie@debian.org>  Thu, 24 Jul 2008 12:39:29 +0200
++
++xaw3d (1.5+E-15) unstable; urgency=low
++
++  * New patch: Box.c.dpatch, to avoid an infinite loop due to short int overflow.
++    Thanks Glenn Burkhard. (closes: #420348)
++  * Policy bumped to 3.7.2 (no changes).
++  * Debhelper level moved to 5 with a few changes in debian/rules.
++
++ -- Francesco Paolo Lovergine <frankie@debian.org>  Tue, 24 Apr 2007 15:24:24 +0200
++
++xaw3d (1.5+E-14) unstable; urgency=low
++
++  * Sigh, libxmu-dev is more appropriate that the headers-only package dep
++    probably in xaw3dg-dev too.
++
++ -- Francesco Paolo Lovergine <frankie@debian.org>  Wed,  3 May 2006 12:17:05 +0200
++
++xaw3d (1.5+E-13) unstable; urgency=low
++
++  * Reintroduced _strictly_ required X11 -dev dependencies for xaw3dg-dev.
++    That should reduce the number of FTBS. The same list is now used in
++    build-dep.
++
++ -- Francesco Paolo Lovergine <frankie@debian.org>  Wed,  3 May 2006 11:39:08 +0200
++
++xaw3d (1.5+E-12) unstable; urgency=low
++
++  * Removed libxaw8-dev fake dependency, because it has been dropped in xorg
++    roadmap.
++  * Removed all X11 -dev dependencies in xaw3dg-dev, and the old
++    libc-dev|libc6-dev now superfluous dependency too. Packages now have to 
++    declare explicitly their own -dev build-deps.
++    (closes: #241280)
++
++ -- Francesco Paolo Lovergine <frankie@debian.org>  Tue,  2 May 2006 23:45:03 +0200
++
++xaw3d (1.5+E-11) unstable; urgency=low
++
++  * Changed to xorg 7 conformancy in paths: 
++      /usr/X11R6/lib -> /usr/lib
++        /usr/X11R6/include -> /usr/include
++    (closes: #362074, #363578)
++  * Added xutils-dev versioned dependency.
++  * Removed fake libxp-dev build-dep due to xmkmf bug.
++
++ -- Francesco Paolo Lovergine <frankie@debian.org>  Sat, 15 Apr 2006 09:41:45 +0200
++
++xaw3d (1.5+E-10) unstable; urgency=low
++
++  * Added dependency on libxaw8-dev as alternative to 6|7 versions.
++    (closes: #321664)
++
++ -- Francesco Paolo Lovergine <frankie@debian.org>  Mon,  9 Jan 2006 08:34:44 +0100
++
++xaw3d (1.5+E-9) unstable; urgency=low
++
++  * Added build-dep for libxp-dev and revised other dependencies.
++    (closes: #330481)
++  * Policy bumped to 3.6.2 (no changes).
++  * Removed libc5 stuff in rules file.
++
++ -- Francesco Paolo Lovergine <frankie@debian.org>  Wed, 28 Sep 2005 14:18:28 +0200
++
++xaw3d (1.5+E-8) unstable; urgency=high
++
++  * Added new missing build-dep libxmu-dev due to last change.
++    (closes: #274589)
++
++ -- Francesco Paolo Lovergine <frankie@debian.org>  Mon,  4 Oct 2004 21:30:18 +0200
++
++xaw3d (1.5+E-7) unstable; urgency=low
++
++  * Changed build-deps to reflect -dev changes in X 4.3+
++    (closes: #241772)
++
++ -- Francesco Paolo Lovergine <frankie@debian.org>  Mon,  2 Aug 2004 15:32:04 +0200
++
++xaw3d (1.5+E-6) unstable; urgency=high
++
++  * Removed libxaw-dev dependency and introduced libxaw7-dev dependency.
++    (closes: #217084)
++
++ -- Francesco Paolo Lovergine <frankie@debian.org>  Fri, 24 Oct 2003 08:46:48 +0200
++
++xaw3d (1.5+E-5) unstable; urgency=low
++
++  * Removed libc5 stuff. It currently require a xlib6-altdev pkg which is not
++    currently available in xfree86. A control.oldlib has been preserved
++    for eventual future use.
++    A whishlist bug is required (to be reassigned to xfree86 :)) if
++    a libc5 oldlib is needed by someone.
++    (See #206832)
++  * Current flex is ok, control changed consequently.
++
++ -- Francesco Paolo Lovergine <frankie@debian.org>  Mon, 13 Oct 2003 11:01:53 +0200
++
++xaw3d (1.5+E-4) unstable; urgency=low
++
++  * Added conditional to xlib6-altdev for i386.
++    (closes: #213113)
++
++ -- Francesco Paolo Lovergine <frankie@debian.org>  Sun, 28 Sep 2003 18:50:34 +0200
++
++xaw3d (1.5+E-3) unstable; urgency=medium
++
++  * Added conflicts with old gv and xfig to simplify upgrading.
++    (closes: #210331)
++
++ -- Francesco Paolo Lovergine <frankie@debian.org>  Sat, 27 Sep 2003 08:46:43 +0200
++
++xaw3d (1.5+E-2) unstable; urgency=low
++
++  * debian/shlibs,debian/xaw3d.shlibs: Generate a dependency on xaw3dg (>= 1.5+E-1).
++    (closes: #207645)
++  * Policy updated to 3.6.1: no changes.
++
++ -- Francesco Paolo Lovergine <frankie@debian.org>  Thu, 28 Aug 2003 20:38:49 +0200
++
++xaw3d (1.5+E-1) unstable; urgency=low
++
++  * Ready for unstable. 
++    Changing release version for a smooth upgrading from experimental. 
++    (closes: #117325,#196439,#144877)
++
++ -- Francesco Paolo Lovergine <frankie@debian.org>  Tue, 19 Aug 2003 00:35:30 +0200
++
++xaw3d (1.5e-2) experimental; urgency=low
++
++  * Missing #include "XawAlloc.h" in SmeBSB.c.diff patch added.
++
++ -- Francesco Paolo Lovergine <frankie@debian.org>  Thu,  7 Aug 2003 15:02:54 +0200
++
++xaw3d (1.5e-1) experimental; urgency=low
++
++  * New upstream release (WOW!)
++    (should close: #117325)
++  * New upstream, after 5 years of staling.
++  * Removed debconf stuff. The past message about new use of Xaw3D was new at
++    woody releasing time. Now it's time to remove it, and there is no other
++    reason to use debconf.
++    (should close: #196439, #144877)
++  * Added dpatch support. There was a significant amount of historical patches
++    in the debian release: it's time to simplify the management to avoid
++    other pain in the ass with future releases.
++    Upstream has also integrated almost all of our patches in his current tree,
++    so I used dpatch to cross-check the sources.
++  * Policy updated at 3.6.0
++  * This release could potentially cause some breakage in other packages.
++    Surely there is a known problem with xfigi and gv. So, there are good reasons
++    to keep it in experimental first of all.
++
++ -- Francesco Paolo Lovergine <frankie@debian.org>  Mon,  4 Aug 2003 15:05:29 +0200
++
++xaw3d (1.5-24) unstable; urgency=low
++
++  * Use flex-old instead of flex in Build-deps.
++    (closes: #197164)
++
++ -- Francesco Paolo Lovergine <frankie@debian.org>  Fri, 13 Jun 2003 14:58:47 +0200
++
++xaw3d (1.5-23) unstable; urgency=low
++
++  * Added virtual libc-dev in Build-deps and xaw3dg-dev.
++    Removed non existent libc6.1-dev in Build-deps.
++    (closes: #182343)
++
++ -- Francesco Paolo Lovergine <frankie@debian.org>  Mon,  3 Mar 2003 11:20:21 +0100
++
++xaw3d (1.5-22) unstable; urgency=low
++
++  * Added pt_BR.po
++    (closes: #174952)
++  * Typo in copyright
++
++ -- Francesco Paolo Lovergine <frankie@debian.org>  Thu,  2 Jan 2003 19:57:10 +0100
++
++xaw3d (1.5-21) unstable; urgency=low
++
++  * Changed Depends line for xaw3dg-dev in order to remove obsolete xlib6g-dev
++    (closes: #170206)
++  * Policy updated (3.5.8)
++
++ -- Francesco Paolo Lovergine <frankie@debian.org>  Tue, 10 Dec 2002 15:57:44 +0100
++
++xaw3d (1.5-20) unstable; urgency=low
++
++  * Fixed a typo in fr.po.
++    (closes: #166072)
++
++ -- Francesco Paolo Lovergine <frankie@debian.org>  Wed, 23 Oct 2002 19:39:26 +0200
++
++xaw3d (1.5-19) unstable; urgency=low
++
++  * fr.po added for po-debconf template.
++    (closes: #165284)
++
++ -- Francesco Paolo Lovergine <frankie@debian.org>  Sat, 19 Oct 2002 10:37:33 +0200
++
++xaw3d (1.5-18) unstable; urgency=low
++
++  * Policy standard update (3.5.7)
++  * Now use po-debconf for translations.
++
++ -- Francesco Paolo Lovergine <frankie@debian.org>  Tue, 15 Oct 2002 10:51:29 +0200
++
++xaw3d (1.5-17) unstable; urgency=low
++
++  * Applied a patch to avoid scrollbar thumb shrinkage.
++    (closes: #138604)
++  * Removed a duplicated dh_installdebconf in rules file. This caused
++    duplicated code in postinst/postrm files.
++    (closes: #163626)
++
++ -- Francesco Paolo Lovergine <frankie@debian.org>  Fri,  4 Oct 2002 11:44:49 +0200
++
++xaw3d (1.5-16) unstable; urgency=low
++
++  * Applied a patch to avoid StripChart widget spurious extra scale lines.
++    See StripChart.c around line 351. This is now coherent with Xaw7.
++    (closes: #56421, #59529)
++
++ -- Francesco Paolo Lovergine <frankie@debian.org>  Wed,  2 Oct 2002 11:40:19 +0200
++
++xaw3d (1.5-15) unstable; urgency=low
++
++  * Added -DARROW_SCROLLBAR in rules file for EXTRA_DEFINES.
++    The trick described in old scrollbars doc is no longer working due 
++    to changes in rules file: EXTRA_DEFINES in lib/Xaw3d/Imakefile are ignored.
++    That obsolete document has been removed.
++    Emacs folks will be happy :)
++
++    This seems also closing an old bug report about scrolling in 
++    emacs21 and xterm. Or hope so. I'll see if I could get some better
++    patches to have a rock solid correction.
++    (closes: #36736)
++
++ -- Francesco Paolo Lovergine <frankie@debian.org>  Wed,  2 Oct 2002 10:19:04 +0200
++
++xaw3d (1.5-14) unstable; urgency=low
++
++  * Typo corrected.
++    (closes: #144877)
++
++ -- Francesco P. Lovergine <frankie@debian.org>  Mon, 29 Apr 2002 22:12:10 +0200
++
++xaw3d (1.5-13) unstable; urgency=low
++
++  * Changed README.Debian contents.
++    (closes: #141216)
++
++ -- Francesco Paolo Lovergine <frankie@debian.org>  Fri,  5 Apr 2002 10:04:28 +0200
++
++xaw3d (1.5-12) unstable; urgency=low
++
++  * Added japanese and russian template for debconf.
++    (closes: #137429)
++
++ -- Francesco Paolo Lovergine <frankie@debian.org>  Sat, 16 Mar 2002 20:11:01 +0100
++
++xaw3d (1.5-11) unstable; urgency=low
++
++  * New maintainer.
++    (closes: #130843)
++  * README.debian removed.
++    (closes: #127076)
++  * Debconf is now a pre-depend item in control file (due to preinst use).
++  * Debconf question moved in the config script.
++    (closes: #131950)
++
++ -- Francesco Paolo Lovergine <frankie@debian.org>  Thu, 31 Jan 2002 12:42:41 +0100
++
++xaw3d (1.5-10) unstable; urgency=low
++
++  * Orphaned this package.
++
++ -- Adrian Bunk <bunk@fs.tum.de>  Fri, 25 Jan 2002 13:53:06 +0100
++
++xaw3d (1.5-9) unstable; urgency=low
++
++  * Added Spanish and German debconf template files.
++    (closes: #95439, #117682)
++
++ -- Adrian Bunk <bunk@fs.tum.de>  Sat, 17 Nov 2001 19:09:09 +0100
++
++xaw3d (1.5-8) unstable; urgency=low
++
++  * s/Note/note/ in debian/templates. (closes: #106323)
++
++ -- Adrian Bunk <bunk@fs.tum.de>  Sun, 21 Oct 2001 15:40:18 +0200
++
++xaw3d (1.5-7) unstable; urgency=low
++
++  * There's no longer a libc5 on m68k.
++
++ -- Adrian Bunk <bunk@fs.tum.de>  Tue, 20 Mar 2001 20:48:00 +0100
++
++xaw3d (1.5-6) unstable; urgency=high
++
++  * The xaw3dg preinst did return an error when the "medium" debconf
++    note wasn't displayed. I added " || true" to fix this.
++    (closes: #86599)
++  * debian/shlibs: Generate a dependency on xaw3dg (>= 1.5-6). 
++
++ -- Adrian Bunk <bunk@fs.tum.de>  Tue, 20 Feb 2001 14:21:24 +0100
++
++xaw3d (1.5-5) unstable; urgency=low
++
++  * xaw3dg is no longer a libXaw replacement (it was obsoleted by
++    libxaw7).
++
++  * Added the changes from Joey's NMU. (closes: #85884)
++  * Corrected the error in the build dependencies. (closes: #84661)
++  * Corrected a typo in the example Xdefault file. (closes: #83917)
++  * Corrected the section of xaw3dg-dev from devel to x11.
++  * Build with support for scrollbars.
++
++ -- Adrian Bunk <bunk@fs.tum.de>  Sat, 17 Feb 2001 00:52:28 +0100
++
++xaw3d (1.5-4.1) unstable; urgency=HIGH
++
++  * NMU. Fixed temp file security holes in AsciiSrc and MultiSrc widgets.
++    Fix taken from X, which had the same problem.
++
++ -- Joey Hess <joeyh@debian.org>  Tue, 13 Feb 2001 12:56:25 -0800
++
++xaw3d (1.5-4) unstable; urgency=low
++
++  * Build-Depends: We need the libc5 packages only on i386 and m86k.
++
++ -- Adrian Bunk <bunk@fs.tum.de>  Wed, 24 Jan 2001 23:43:35 +0100
++
++xaw3d (1.5-3) unstable; urgency=medium
++
++  * Added missing build dependency on xutils. (closes: #82011)
++  * Removed the obsolete suggestion of xaw-wrappers. (closes: #79567)
++
++ -- Adrian Bunk <bunk@fs.tum.de>  Tue, 16 Jan 2001 00:23:38 +0100
++
++xaw3d (1.5-2) unstable; urgency=medium
++
++  * Set "SOXAWREV = SOXAW6REV" in lib/Xaw3d/Imakefile to get the right
++    so-version with XFree4. (closes: #77546)
++  * Changed the build dependencies to reflect the changes in XFree4.
++  * Changed debian/shlibs: libXaw is now in the libxaw6 package.
++  * Removed the dependency of xaw3dg on ldso and added a build
++    dependency on "libc6-dev (>= 2.2) | libc6.1-dev  (>= 2.2)" instead
++    since ldconfig is now in the libc6 package. (closes: #74657)
++
++ -- Adrian Bunk <bunk@fs.tum.de>  Sun, 10 Dec 2000 13:24:41 +0100
++
++xaw3d (1.5-1) unstable; urgency=low
++
++  * New maintainer. (closes: #68174)
++  * New upstream release.
++  * xaw3dg now depends on xaw-wrappers.
++    (closes: #3857, #7757, #15113, #16247, #35059)
++  * s/$LDSOCONFA/$LDSOCONF/ in the postrm of xaw3d and xaw3dg.
++    (closes: #61180, #70459)
++  * Added build dependencies on debhelper and xlib6g-dev.
++  * Shortened the description of the xaw3d package.
++  * Removed debian/prerm and debian/xaw3d.prerm:
++    The /usr/doc links are handled by dh_installdocs.
++  * Added #DEBHELPER# tokens in debian/postrm and debian/xaw3d.postrm.
++  * Remove lib/Xaw3d/laygram.h in the clean target.
++  * Removed old.changes from the source.
++  * Upload sponsored by Tony Mancill <tmancill@debian.org>.
++
++ -- Adrian Bunk <bunk@fs.tum.de>  Fri,  3 Nov 2000 08:06:16 +0100
++
++xaw3d (1.3-6.8) frozen unstable; urgency=low
++
++  * Non-maintainer upload, blessed by the maintainer.
++  * Fix porting issues by making xaw3d (the libc5-compat package)
++    Architecture: i386 m68k, closes: #17184, #27133, #32244, #53515.
++    [important]
++  * Used xlib6-altdev tools, too (xmkmf), to make libc5 version depend
++    on libc5 X libs (does anyone actually use this libc5-compat lib?!).
++    [important]
++  * Added Replaces: xaw3dg (<< 1.3-6.4) to xaw3dg-dev, because dpkg would
++    barf when upgrading from versions of xaw3dg prior to that one, which
++    still contained the static library. [important]
++
++  * Updated for Policy 3.1. Converted to debhelper v2. Lintian clean.
++  * Removed Conflicts: and Replaces: xaw3d from xaw3dg, as libc6 version
++    does not replace functionality of libc5 version (theoretically that
++    doesn't even work).
++  * Did strip --strip-debug on the static library (through dh_strip),
++    reducing it by more than a half in size.
++  * Used upstream Imakefile/Makefile to install things (not for
++    libc5-compat, though), actually the only modified variable is $(INCDIR).
++    The difference is that three header files are removed - but those were
++    most probably extra anyway; and one .c file added - but it seems to be
++    on purpose.
++  * Made the libc5-compat Imakefile build only the shared library, as we
++    don't use the static one, to reduce build time.
++  * Made `clean' rule work all the time.
++  * Moved xaw3dg-dev to section devel and xaw3d to oldlibs.
++  * Moved Suggests: nextawg to xaw3dg package.
++  * Upgrade to new xaw-wrappers obsoletes xaw3d(g)'s xaw-wrappers files,
++    removed them now. Added Suggests: xaw-wrappers to library packages.
++  * Made -dev depend on the exact same version of library package.
++    Made -dev package's doc directory a symlink to library package's dir.
++  * Removed version from xlib6(g) dependency from the shlibs file... it
++    changes constantly in xlib6(g) itself, and dpkg-shlibdeps uses the
++    xlib6g's one anyway, so there's no point in using it.
++  * Unconditionally fixed lib/Xaw3d/XawI18n.h, to remove need for setting
++    -DDEBIAN through make cmdline flags.
++  * Changed backup tempfile location in postinsts from /etc to /var/run.
++  * Some s/3d/3D/ changes. Renamed debian.README to README.Debian.
++    Clarified descriptions in control and in xaw3dg postinst.
++
++ -- Josip Rodin <jrodin@jagor.srce.hr>  Sun, 30 Jan 2000 02:46:16 +0100
++
++xaw3d (1.3-6.7) unstable; urgency=low
++
++  * Non-maintainer upload
++  * Handle ld.so.conf properly in postrm as well
++  
++ -- Wichert Akkerman <wakkerma@debian.org>  Tue, 21 Dec 1999 23:54:45 +0100
++
++xaw3d (1.3-6.6) unstable; urgency=low
++
++  * Non-maintainer upload
++  * Handle ld.so.conf properly
++
++ -- Wichert Akkerman <wakkerma@debian.org>  Mon, 20 Dec 1999 13:31:44 +0100
++
++xaw3d (1.3-6.5) unstable; urgency=low
++
++  * Fixed shlibs to mention libxaw3d.  closes: #34357
++  * Noted bugs fixed in previous nmu's.
++      -dev pkg:  closes: #16719, #26056
++      copyright uncompressed:  closes: #14490
++      security fix:  closes: #21792
++  * Lintian 1.0 clean.
++
++ -- Adam Heath <doogie@debian.org>  Sun, 21 Mar 1999 22:16:26 -0600
++
++xaw3d (1.3-6.4) unstable; urgency=low
++
++  * Non-maintainer release at Joost's request.
++  * Added support for xaw3dg-dev package.
++  * Now xaw3d package is built only for the archs that support libc5.
++  * Corrected typos in copyright and in description.
++  * Copyright is now uncompressed.
++  * Files in /usr/doc are now compressed with -9.
++
++ -- Marco Pistore <pistore@di.unipi.it>  Sat,  9 Jan 1999 20:29:31 +0100
++
++xaw3d (1.3-6.3) frozen unstable; urgency=HIGH
++
++  * Applied xfree86's 24 May 98 patch to fix more buffer overflows (an
++    unfiled but still critical security bug).
++
++ -- Joey Hess <joeyh@master.debian.org>  Sat, 20 Jun 1998 13:15:32 -0700
++
++xaw3d (1.3-6.2) frozen unstable; urgency=HIGH
++
++  * Another NMU at Joost's request.
++  * Applied patch to fix buffer overflows (critical security bug #21792).
++    I actually applied XFree86's patch for X, using only the patch for
++    XawIm.c
++
++ -- Joey Hess <joeyh@master.debian.org>  Tue,  5 May 1998 12:07:59 -0700
++
++xaw3d (1.3-6.1) unstable; urgency=low
++
++  * Non-maintaner release, at Joost's request.
++  * Now builds xaw3dg package for libc6 version, xaw3d package for libc5
++    version.
++  * Updated shlibs file for libc6.
++  * Run ldconfig in postinst even if xaw3d was already in ld.so.conf.
++    (since old version may be libc5).
++  * Modified XawI18n.h not to include widec.h if DEBIAN is defined, and
++    define DEBIAN while building.
++  * Fixed file in /tmp security holes.
++
++ -- Joey Hess <joeyh@master.debian.org>  Fri,  3 Oct 1997 13:42:47 -0400
++
++xaw3d (1.3-6) unstable; urgency=low
++
++  * Corrected the "install" message
++  * now uses libc6
++  * included a shlibs file
++  * added xaw-wrappers file for axe
++  
++ -- joost witteveen <joost@rulcmc.leidenuniv.nl>  Sun,  3 Aug 1997 20:31:18 +0200
++
++xaw3d (1.3-5) unstable; urgency=low
++
++  * Compiled with -D_REENTRANT
++  * uses new, unreleased ld.so-1.8.9, so that the soname now can be 
++    libxaw3d, making everything somewhat easier.
++
++ -- joost witteveen <joost@rulcmc.leidenuniv.nl>  Sun, 9 Feb 1997 10:56:39 +0100
++
++xaw3d (1.3-4) unstable; urgency=low
++
++  * Copied Joey Hess' postinst and postrm scripts (from nextaw), and
++    removed the prerm script (why did I use a prerm script in the first place?)
++
++ -- joost witteveen <joost@rulcmc.leidenuniv.nl>  Fri, 7 Feb 1997 14:27:13 +0100
++
++xaw3d (1.3-3) unstable; urgency=low
++
++  * Added description of Joey Hess on how to install more Xaw replacements
++    libs on one system.
++
++ -- joost witteveen <joost@rulcmc.leidenuniv.nl>  Sat, 25 Jan 1997 22:22:07 +0100
++
++xaw3d (1.3-2) unstable; urgency=low
++
++  * Changed /sbin/ldconfig to ldconfig in postinst, prerm.
++  * Included changelog.Debian
++  * gzipped /usr/doc/xaw3d/*
++  
++ -- joost witteveen <joost@rulcmc.leidenuniv.nl>  Fri, 27 Dec 1996 19:12:04 +0100
++
++xaw3d (1.3-1) unstable; urgency=low
++  * Upgraded to upstream version (finally!)
++  * Converted to new source scheme.
++
++ -- joost witteveen <joost@rulcmc.leidenuniv.nl>  Sun, 8 Dec 1996 10:58:02 +0100
++
++Local variables:
++mode: debian-changelog
++End:
+diff -urN xc.org/debian/compat xc/debian/compat
+--- xc.org/debian/compat       1970-01-01 01:00:00.000000000 +0100
++++ xc/debian/compat   2009-01-22 17:59:49.648848414 +0100
+@@ -0,0 +1 @@
++5
+diff -urN xc.org/debian/control xc/debian/control
+--- xc.org/debian/control      1970-01-01 01:00:00.000000000 +0100
++++ xc/debian/control  2009-01-22 17:59:49.612848452 +0100
+@@ -0,0 +1,35 @@
++Source: xaw3d
++Section: x11
++Priority: optional
++Maintainer: Francesco Paolo Lovergine <frankie@debian.org>
++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
++Standards-Version: 3.8.0
++
++Package: xaw3dg
++Architecture: any
++Depends: ${shlibs:Depends}
++Conflicts: axe (<< 6.1.2-2), xaw3d (<= 1.3-6), xfig (<< 1:3.2.4-rel-9), gv (<< 1:3.5.8-30.1)
++Description: Xaw3d widget set
++ Xaw3d is a set of 3-D widgets based on the Athena Widget set, which
++ adds a three dimensional appearance on some of the widgets of X11
++ applications linked with this library.
++ .
++ Please note that this package no longer adds a three dimensional
++ appearance on applications dynamically linked against libXaw.
++
++Package: xaw3dg-dev
++Section: devel
++Architecture: any
++Depends: xaw3dg (=${binary:Version}), xutils-dev, libx11-dev, libxmu-dev, libxpm-dev, libxt-dev, x11proto-core-dev, x11proto-xext-dev
++Conflicts: xaw3d-dev
++Replaces: xaw3dg (<< 1.5+E-16)
++Description: Xaw3d widget set development package
++ Xaw3d is a set of 3-D widgets based on the R6.1 Athena Widget set, which
++ adds a three dimensional appearance on some of the widgets of X11
++ applications linked with this library.
++ .
++ This is the development package (i.e. include files and static library)
++ of the xaw3dg library.
++
++
++
+diff -urN xc.org/debian/copyright xc/debian/copyright
+--- xc.org/debian/copyright    1970-01-01 01:00:00.000000000 +0100
++++ xc/debian/copyright        2009-01-22 17:59:49.652849442 +0100
+@@ -0,0 +1,32 @@
++This program was downloaded from: http://www.visi.com/~hawkeyd/xaw3d.html
++
++Authors:  D.J. Hawkey Jr. <hawkeyd@visi.com> (passed-away upstream)
++          Kaleb S. Keithley <kaleb@keithley.org> (previous upstream)
++
++This program is currently in unmaintained state, but for minimal patches
++applied by packager maintainers.
++
++Copyright (c) 1991, 1994  X Consortium
++
++Permission is hereby granted, free of charge, to any person obtaining a copy
++of this software and associated documentation files (the "Software"), to deal
++in the Software without restriction, including without limitation the rights
++to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
++copies of the Software, and to permit persons to whom the Software is
++furnished to do so, subject to the following conditions:
++
++The above copyright notice and this permission notice shall be included in
++all copies or substantial portions of the Software.
++
++THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
++IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
++FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE
++X CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
++AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
++CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
++
++Except as contained in this notice, the name of the X Consortium shall not be
++used in advertising or otherwise to promote the sale, use or other dealings
++in this Software without prior written authorization from the X Consortium.
++
++
+diff -urN xc.org/debian/patches/00list xc/debian/patches/00list
+--- xc.org/debian/patches/00list       1970-01-01 01:00:00.000000000 +0100
++++ xc/debian/patches/00list   2009-01-22 17:59:49.664848894 +0100
+@@ -0,0 +1,4 @@
++Imakefile
++SmeBSB.c
++Box.c
++MultiSrc.c
+diff -urN xc.org/debian/patches/Box.c.dpatch xc/debian/patches/Box.c.dpatch
+--- xc.org/debian/patches/Box.c.dpatch 1970-01-01 01:00:00.000000000 +0100
++++ xc/debian/patches/Box.c.dpatch     2009-01-22 17:59:49.664848894 +0100
+@@ -0,0 +1,27 @@
++#! /bin/sh /usr/share/dpatch/dpatch-run
++## box.c.dpatch by Francesco Paolo Lovergine <frankie@debian.org>
++##
++## All lines beginning with `## DP:' are a description of the patch.
++## DP: No description.
++
++@DPATCH@
++diff -urNad xaw3d-1.5+E~/lib/Xaw3d/Box.c xaw3d-1.5+E/lib/Xaw3d/Box.c
++--- xaw3d-1.5+E~/lib/Xaw3d/Box.c      1996-10-15 16:41:18.000000000 +0200
+++++ xaw3d-1.5+E/lib/Xaw3d/Box.c       2007-04-24 15:28:39.000000000 +0200
++@@ -353,8 +353,16 @@
++      else {
++          width = preferred_width;
++          do { /* find some width big enough to stay within this height */
+++#if 0 
++              width *= 2;
++              if (width > constraint->width) width = constraint->width;
+++#endif
+++                if (width > constraint->width/2) {  /* avoid short int overflow */
+++                 width = constraint->width;
+++             }
+++                else { 
+++                 width *= 2; 
+++             }
++              DoLayout(w, width, 0, &preferred_width, &preferred_height, FALSE);
++          } while (preferred_height > constraint->height &&
++                   width < constraint->width);
+diff -urN xc.org/debian/patches/Imakefile.dpatch xc/debian/patches/Imakefile.dpatch
+--- xc.org/debian/patches/Imakefile.dpatch     1970-01-01 01:00:00.000000000 +0100
++++ xc/debian/patches/Imakefile.dpatch 2009-01-22 17:59:49.652849442 +0100
+@@ -0,0 +1,55 @@
++#!/bin/sh -e
++[ -f debian/patches/00patch-opts ] && . debian/patches/00patch-opts
++patch_opts="${patch_opts:--f --no-backup-if-mismatch}"
++                                                                                                                
++if [ $# -ne 1 ]; then
++echo >&2 "bash: script expects -patch|-unpatch as argument"
++    exit 1
++fi
++case "$1" in
++       -patch) patch $patch_opts -p1 < $0;;
++       -unpatch) patch $patch_opts -p1 -R < $0;;
++        *)
++                echo >&2 "bash: script expects -patch|-unpatch as argument"
++                exit 1;;
++esac
++                                                                                                                
++exit 0
++@DPATCH@
++diff -urNad /home/frankie/debian/mypkgs/xaw3d/xaw3d-1.5+E/lib/Xaw3d/Imakefile xaw3d-1.5+E/lib/Xaw3d/Imakefile
++--- /home/frankie/debian/mypkgs/xaw3d/xaw3d-1.5+E/lib/Xaw3d/Imakefile 2003-08-28 20:28:32.000000000 +0200
+++++ xaw3d-1.5+E/lib/Xaw3d/Imakefile   2003-08-28 20:37:21.000000000 +0200
++@@ -2,6 +2,9 @@
++ #define XCOMM #
++ #endif
++ 
+++# needed to get the right so-version with XFree4
+++SOXAWREV = 6.1
+++
++ XCOMM Build options. Have you read the README.XAW3D file yet?
++ XCOMM
++ XCOMM For color pixmaps, define MULTIPLANE_PIXMAPS:
++@@ -9,7 +12,7 @@
++ XCOMM For grayed stipple shadows, define GRAY_BLKWHT_STIPPLES:
++ #define GRAY_BLKWHT_STIPPLES
++ XCOMM For scrollbars with arrows, define ARROW_SCROLLBARS:
++-#undef ARROW_SCROLLBARS
+++#define ARROW_SCROLLBARS
++ 
++ #define DoNormalLib NormalLibXaw
++ #define DoSharedLib SharedLibXaw
++@@ -22,12 +25,13 @@
++ #define IncSubSubdir Xaw3d
++ 
++ XCOMM When building outside an X11 source tree:
++-XCOMM EXTRA_INCLUDES = -I.
+++EXTRA_INCLUDES = -I.
++ 
++ #ifdef SharedXawReqs
++ REQUIREDLIBS = SharedXawReqs
++ #endif
++ 
+++
++ LINTLIBS = $(LINTXLIB) $(LINTXTOOL)
++ 
++ BASE_HDRS = AllWidgets.h AsciiSink.h AsciiSinkP.h AsciiSrc.h AsciiSrcP.h \
+diff -urN xc.org/debian/patches/MultiSrc.c.dpatch xc/debian/patches/MultiSrc.c.dpatch
+--- xc.org/debian/patches/MultiSrc.c.dpatch    1970-01-01 01:00:00.000000000 +0100
++++ xc/debian/patches/MultiSrc.c.dpatch        2009-01-22 17:59:49.664848894 +0100
+@@ -0,0 +1,18 @@
++#! /bin/sh /usr/share/dpatch/dpatch-run
++## MultiSrc.c.dpatch by Francesco Paolo Lovergine <frankie@debian.org>
++##
++## All lines beginning with `## DP:' are a description of the patch.
++## DP: No description.
++
++@DPATCH@
++diff -urNad xaw3d-1.5+E~/lib/Xaw3d/MultiSrc.c xaw3d-1.5+E/lib/Xaw3d/MultiSrc.c
++--- xaw3d-1.5+E~/lib/Xaw3d/MultiSrc.c 2006-01-09 08:30:52.000000000 +0100
+++++ xaw3d-1.5+E/lib/Xaw3d/MultiSrc.c  2008-07-24 11:16:52.000000000 +0200
++@@ -739,6 +739,7 @@
++   
++   if ( string_set || (old_src->multi_src.type != src->multi_src.type) ) {
++     RemoveOldStringOrFile(old_src, string_set);
+++    src->multi_src.allocated_string = old_src->multi_src.allocated_string;
++     file = InitStringOrFile(src, string_set);
++ 
++     /* Load pieces does this logic for us, but it shouldn't.  Its messy.*/
+diff -urN xc.org/debian/patches/SmeBSB.c.dpatch xc/debian/patches/SmeBSB.c.dpatch
+--- xc.org/debian/patches/SmeBSB.c.dpatch      1970-01-01 01:00:00.000000000 +0100
++++ xc/debian/patches/SmeBSB.c.dpatch  2009-01-22 17:59:49.664848894 +0100
+@@ -0,0 +1,107 @@
++#!/bin/sh -e
++[ -f debian/patches/00patch-opts ] && . debian/patches/00patch-opts
++patch_opts="${patch_opts:--f --no-backup-if-mismatch}"
++                                                                                                                
++if [ $# -ne 1 ]; then
++echo >&2 "bash: script expects -patch|-unpatch as argument"
++    exit 1
++fi
++case "$1" in
++       -patch) patch $patch_opts -p1 < $0;;
++       -unpatch) patch $patch_opts -p1 -R < $0;;
++        *)
++                echo >&2 "bash: script expects -patch|-unpatch as argument"
++                exit 1;;
++esac
++                                                                                                                
++exit 0
++@DPATCH@
++diff -urNad /home/frankie/debian/mypkgs/xaw3d/xaw3d-1.5e/lib/Xaw3d/SmeBSB.c xaw3d-1.5e/lib/Xaw3d/SmeBSB.c
++--- /home/frankie/debian/mypkgs/xaw3d/xaw3d-1.5e/lib/Xaw3d/SmeBSB.c   2003-08-04 17:27:58.000000000 +0200
+++++ xaw3d-1.5e/lib/Xaw3d/SmeBSB.c     2003-08-07 15:02:39.000000000 +0200
++@@ -52,6 +52,8 @@
++ #include <X11/Xaw3d/Cardinals.h>
++ #include <stdio.h>
++ 
+++#include "XawAlloc.h"
+++
++ /* needed for abs() */
++ #ifndef X_NOT_STDC_ENV
++ #include <stdlib.h>
++@@ -712,6 +714,8 @@
++     int x, y;
++     unsigned int width, height, bw;
++     char buf[BUFSIZ];
+++    char *pbuf;
+++    int len;
++     
++     if (is_left) {
++      width = height = 0;
++@@ -720,18 +724,24 @@
++          if (!XGetGeometry(XtDisplayOfObject(w), 
++                          entry->sme_bsb.left_bitmap, &root, &x, &y,
++                          &width, &height, &bw, &entry->sme_bsb.left_depth)) {
++-             (void) sprintf(buf, "Xaw SmeBSB Object: %s %s \"%s\".",
++-                     "Could not get Left Bitmap",
++-                     "geometry information for menu entry",
++-                     XtName(w));
++-             XtAppError(XtWidgetToApplicationContext(w), buf);
+++               char *err1 = "Xaw SmeBSB Object: Could not get Left Bitmap geometry information for menu entry ";
+++            len = strlen(err1) + strlen(XtName(w)) + 3 + 1;
+++               pbuf = XtStackAlloc(len, buf);
+++               if (pbuf == NULL) return;
+++               sprintf(pbuf, "%s\"%s\".", err1, XtName(w));
+++               XtAppError(XtWidgetToApplicationContext(w), pbuf);
+++               XtStackFree(pbuf, buf);
++          }
++ #ifdef NEVER
++          if (entry->sme_bsb.left_depth != 1) {
++-             (void) sprintf(buf, "Xaw SmeBSB Object: %s \"%s\" %s.", 
++-                     "Left Bitmap of entry",  XtName(w),
++-                     "is not one bit deep");
++-             XtAppError(XtWidgetToApplicationContext(w), buf);
+++               char *err1 = "Xaw SmeBSB Object: Left Bitmap of entry ";
+++               char *err2 = " is not one bit deep.";
+++               len = strlen(err1) + strlen(err2) + strlen(XtName(w)) + 2 + 1;
+++               pbuf = XtStackAlloc(len, buf);
+++               if (pbuf == NULL) return;
+++               sprintf(pbuf, "%s\"%s\"%s", err1, XtName(w), err2);
+++               XtAppError(XtWidgetToApplicationContext(w), pbuf);
+++               XtStackFree(pbuf, buf);
++          }
++ #endif
++      }
++@@ -745,18 +755,24 @@
++          if (!XGetGeometry(XtDisplayOfObject(w),
++                          entry->sme_bsb.right_bitmap, &root, &x, &y,
++                          &width, &height, &bw, &entry->sme_bsb.right_depth)) {
++-             (void) sprintf(buf, "Xaw SmeBSB Object: %s %s \"%s\".",
++-                     "Could not get Right Bitmap",
++-                     "geometry information for menu entry",
++-                     XtName(w));
++-             XtAppError(XtWidgetToApplicationContext(w), buf);
+++            char *err1 = "Xaw SmeBSB Object: Could not get Right Bitmap geometry information for menu entry ";
+++            len = strlen(err1) + strlen(XtName(w)) + 3 + 1;
+++            pbuf = XtStackAlloc(len, buf);
+++            if (pbuf == NULL) return;
+++            sprintf(pbuf, "%s\"%s\".", err1, XtName(w));
+++            XtAppError(XtWidgetToApplicationContext(w), pbuf);
+++            XtStackFree(pbuf, buf);
++          }
++ #ifdef NEVER
++          if (entry->sme_bsb.right_depth != 1) {
++-             (void) sprintf(buf, "Xaw SmeBSB Object: %s \"%s\" %s.", 
++-                     "Right Bitmap of entry", XtName(w),
++-                     "is not one bit deep");
++-             XtAppError(XtWidgetToApplicationContext(w), buf);
+++            char *err1 = "Xaw SmeBSB Object: Right Bitmap of entry ";
+++            char *err2 = " is not one bit deep.";
+++            len = strlen(err1) + strlen(err2) + strlen(XtName(w)) + 2 + 1;
+++            pbuf = XtStackAlloc(len, buf);
+++            if (pbuf == NULL) return;
+++            sprintf(pbuf, "%s\"%s\"%s", err1, XtName(w), err2);
+++            XtAppError(XtWidgetToApplicationContext(w), pbuf);
+++            XtStackFree(pbuf, buf);
++          }
++ #endif
++      }
+diff -urN xc.org/debian/postinst xc/debian/postinst
+--- xc.org/debian/postinst     1970-01-01 01:00:00.000000000 +0100
++++ xc/debian/postinst 2009-01-22 17:59:49.648848414 +0100
+@@ -0,0 +1,10 @@
++#!/bin/sh -e
++
++case "$1" in
++        configure)
++              ldconfig
++        ;;
++esac
++
++
++#DEBHELPER#
+diff -urN xc.org/debian/README.Debian xc/debian/README.Debian
+--- xc.org/debian/README.Debian        1970-01-01 01:00:00.000000000 +0100
++++ xc/debian/README.Debian    2009-01-22 17:59:49.648848414 +0100
+@@ -0,0 +1,15 @@
++Xaw3D for Debian
++----------------
++
++Xaw3d is not a transparent substitute of libXaw for various
++incompatibilities. All programs which want a 3d look for Xaw
++toolkit, need to link explicitly against this library and manage
++minor problems properly.
++
++Some hacks have been applied to upstream sources. This library is currently 
++not maintained upstream.
++
++You can find other information about the beast in README.XAW3D.
++
++ -- Francesco P. Lovergine <frankie@debian.org>, Tue Apr 24 15:58:51 CEST 2007
++
+diff -urN xc.org/debian/rules xc/debian/rules
+--- xc.org/debian/rules        1970-01-01 01:00:00.000000000 +0100
++++ xc/debian/rules    2009-01-22 17:59:49.612848452 +0100
+@@ -0,0 +1,69 @@
++#!/usr/bin/make -f
++
++SHELL = /bin/bash
++PACKAGE = xaw3d
++
++#export DH_VERBOSE = 1
++
++include /usr/share/dpatch/dpatch.make
++
++ifneq (,$(findstring $(ARCH), $(COMPATARCHS)))
++#
++# Remove comment to enable libc5 compatibility.
++# You need also to use control.oldlib instead of the standard one.
++#COMPATSTUFF = yep
++#
++export DH_OPTIONS = -a
++else
++export DH_OPTIONS = -Nxaw3d -a
++endif
++
++SOURCE=lib/Xaw3d
++
++build: stamp-build
++stamp-build: patch-stamp
++      rm -rf $(SOURCE)/X11 && install -m755 -d $(SOURCE)/X11
++      cd $(SOURCE) && ln -sf ../ X11/Xaw3d && xmkmf
++      $(MAKE) -C $(SOURCE) \
++          EXTRA_DEFINES="-D_REENTRANT -DARROW_SCROLLBAR" SHLIBDEF="-D_REENTRANT -DARROW_SCROLLBAR"
++      touch $@
++
++clean: myclean unpatch
++myclean:
++      rm -rf $(SOURCE)/X11 $(COMPAT) lib/Xaw3d/laygram.h
++      cd $(SOURCE) && [ -f $(SOURCE)/Makefile ] || xmkmf
++      $(MAKE) -C $(SOURCE) clean
++      dh_clean stamp-build `find . -name Makefile`
++
++install: DH_OPTIONS=
++install: stamp-build
++      dh_testdir
++      dh_testroot
++      dh_clean -k
++
++      $(MAKE) -C $(SOURCE) install \
++                DESTDIR=$(CURDIR)/debian/tmp INCDIR=/usr/include
++
++binary: binary-indep binary-arch
++
++binary-indep:
++# There are no architecture-independent packages here.
++
++binary-arch: install
++      dh_testdir
++      dh_testroot
++      dh_install --source $(CURDIR)/debian/tmp
++      dh_installexamples $(SOURCE)/app-defaults
++      dh_installdocs $(SOURCE)/README.XAW3D 
++      dh_installchangelogs
++      dh_installdebconf
++      dh_strip
++      dh_compress
++      dh_fixperms
++      dh_installdeb
++      dh_shlibdeps
++      dh_gencontrol
++      dh_md5sums
++      dh_builddeb
++
++.PHONY:       build clean install binary binary-arch binary-indep unpatch myclean patch
+diff -urN xc.org/debian/shlibs xc/debian/shlibs
+--- xc.org/debian/shlibs       1970-01-01 01:00:00.000000000 +0100
++++ xc/debian/shlibs   2009-01-22 17:59:49.652849442 +0100
+@@ -0,0 +1 @@
++libXaw3d      6       xaw3dg (>= 1.5+E-1)
+diff -urN xc.org/debian/xaw3dg-dev.install xc/debian/xaw3dg-dev.install
+--- xc.org/debian/xaw3dg-dev.install   1970-01-01 01:00:00.000000000 +0100
++++ xc/debian/xaw3dg-dev.install       2009-01-22 17:59:49.652849442 +0100
+@@ -0,0 +1,3 @@
++usr/include/* usr/include
++usr/lib/*.a usr/lib
++usr/lib/*.so usr/lib
+diff -urN xc.org/debian/xaw3dg.install xc/debian/xaw3dg.install
+--- xc.org/debian/xaw3dg.install       1970-01-01 01:00:00.000000000 +0100
++++ xc/debian/xaw3dg.install   2009-01-22 17:59:49.652849442 +0100
+@@ -0,0 +1 @@
++usr/lib/*.so.* usr/lib
+diff -urN xc.org/debian/xaw3d.postinst xc/debian/xaw3d.postinst
+--- xc.org/debian/xaw3d.postinst       1970-01-01 01:00:00.000000000 +0100
++++ xc/debian/xaw3d.postinst   2009-01-22 17:59:49.612848452 +0100
+@@ -0,0 +1,19 @@
++#!/bin/sh -e
++#this script was written by Joey Hess
++
++XAWREPLDIR=/usr/lib/libc5-compat/Xaw3d
++LDSOCONF=/etc/ld.so.conf
++
++case "$1" in
++        configure)
++                tmpfile=`tempfile` || tmpfile=/var/run/`basename $0`.$$
++
++                if ! grep -q $XAWREPLDIR $LDSOCONF ; then 
++                        (echo $XAWREPLDIR; grep -v $XAWREPLDIR $LDSOCONF) >$tmpfile && \
++                                ( cat $tmpfile > $LDSOCONF ; rm -f $tmpfile )
++              fi
++              ldconfig
++        ;;
++esac
++
++#DEBHELPER#
+diff -urN xc.org/debian/xaw3d.postrm xc/debian/xaw3d.postrm
+--- xc.org/debian/xaw3d.postrm 1970-01-01 01:00:00.000000000 +0100
++++ xc/debian/xaw3d.postrm     2009-01-22 17:59:49.648848414 +0100
+@@ -0,0 +1,23 @@
++#! /bin/sh
++
++#this script was written by Joey Hess (slight mods by joost)
++
++set -e
++
++XAWREPLDIR=/usr/lib/libc5-compat/Xaw3d
++LDSOCONF=/etc/ld.so.conf
++
++case "$1" in
++        remove)
++                mkdir $XAWREPLDIR 2>/dev/null || true
++                ldconfig
++        ;;
++        purge)
++                tmpfile=`tempfile` || tmpfile=/etc/`basename $0`.$$
++                grep -v $XAWREPLDIR $LDSOCONF >$tmpfile && \
++                                              ( cat $tmpfile > $LDSOCONF ; rm $tmpfile )
++                rmdir 2>/dev/null $XAWREPLDIR || true
++        ;;              
++esac
++
++#DEBHELPER#
+diff -urN xc.org/debian/xaw3d.shlibs xc/debian/xaw3d.shlibs
+--- xc.org/debian/xaw3d.shlibs 1970-01-01 01:00:00.000000000 +0100
++++ xc/debian/xaw3d.shlibs     2009-01-22 17:59:49.648848414 +0100
+@@ -0,0 +1,2 @@
++libXaw                6       xlib6
++libXaw3d      6       xaw3d (>= 1.5+E-1)
+diff -urN xc.org/lib/Xaw3d/AsciiSrc.c xc/lib/Xaw3d/AsciiSrc.c
+--- xc.org/lib/Xaw3d/AsciiSrc.c        2000-11-27 14:19:36.000000000 +0100
++++ xc/lib/Xaw3d/AsciiSrc.c    2009-01-22 17:59:49.592848829 +0100
+@@ -51,11 +51,17 @@
+ #include <X11/Xaw3d/MultiSrcP.h> 
+ #endif
++#include <sys/types.h>
++#include <sys/stat.h>
++#include <fcntl.h>
+ #if (defined(ASCII_STRING) || defined(ASCII_DISK))
+ #  include <X11/Xaw3d/AsciiText.h> /* for Widget Classes. */
+ #endif
++#include <sys/types.h>
++#include <sys/stat.h>
++#include <fcntl.h>
+ /****************************************************************
+  *
+@@ -1007,7 +1013,9 @@
+ AsciiSrcObject src;
+ Boolean newString;
+ {
+-    char * open_mode = NULL;
++    mode_t open_mode = 0;
++    const char *fdopen_mode = NULL;
++    int fd;
+     FILE * file;
+     char fileName[TMPSIZ];
+@@ -1049,7 +1057,8 @@
+           XtErrorMsg("NoFile", "asciiSourceCreate", "XawError",
+                    "Creating a read only disk widget and no file specified.",
+                      NULL, 0);
+-      open_mode = "r";
++      open_mode = O_RDONLY;
++      fdopen_mode = "r";
+       break;
+     case XawtextAppend:
+     case XawtextEdit:
+@@ -1057,9 +1066,17 @@
+           src->ascii_src.string = fileName;
+           (void) tmpnam(src->ascii_src.string);
+           src->ascii_src.is_tempfile = TRUE;
+-          open_mode = "w";
+-      } else
+-          open_mode = "r+";
++          open_mode = O_WRONLY | O_CREAT | O_EXCL;
++          fdopen_mode = "w";
++      } else {
++/* O_NOFOLLOW is a BSD & Linux extension */
++#ifdef O_NOFOLLOW
++              open_mode = O_RDWR | O_NOFOLLOW;
++#else
++              open_mode = O_RDWR; /* unsafe; subject to race conditions */
++#endif
++              fdopen_mode = "r+";
++      }
+       break;
+     default:
+       XtErrorMsg("badMode", "asciiSourceCreate", "XawError",
+@@ -1078,11 +1095,14 @@
+     }
+     
+     if (!src->ascii_src.is_tempfile) {
+-      if ((file = fopen(src->ascii_src.string, open_mode)) != 0) {
+-          (void) fseek(file, (Off_t)0, 2);
+-          src->ascii_src.length = (XawTextPosition) ftell(file);
+-          return file;
+-      } else {
++      if ((fd = open(src->ascii_src.string, open_mode, 0666))) {
++          if ((file = fdopen(fd, fdopen_mode)) != NULL) {
++                  (void)fseek(file, 0, SEEK_END);
++                  src->ascii_src.length = (XawTextPosition)ftell(file);
++                  return (file);
++          }
++      }
++      {           
+           String params[2];
+           Cardinal num_params = 2;
+           
+@@ -1094,7 +1114,7 @@
+       }
+     } 
+     src->ascii_src.length = 0;
+-    return((FILE *)NULL);
++    return(NULL);
+ }
+ static void
+diff -urN xc.org/lib/Xaw3d/AsciiSrcP.h xc/lib/Xaw3d/AsciiSrcP.h
+--- xc.org/lib/Xaw3d/AsciiSrcP.h       1996-10-15 16:41:18.000000000 +0200
++++ xc/lib/Xaw3d/AsciiSrcP.h   2009-01-22 17:59:49.596893228 +0100
+@@ -85,7 +85,11 @@
+ #ifdef L_tmpnam
+ #define TMPSIZ L_tmpnam
+ #else
+-#define TMPSIZ 32             /* bytes to allocate for tmpnam */
++#ifdef PATH_MAX
++#define TMPSIZ PATH_MAX
++#else
++#define TMPSIZ 1024           /* bytes to allocate for tmpnam */
++#endif
+ #endif
+ #define MAGIC_VALUE ((XawTextPosition) -1) /* Magic value. */
+diff -urN xc.org/lib/Xaw3d/Box.c xc/lib/Xaw3d/Box.c
+--- xc.org/lib/Xaw3d/Box.c     1996-10-15 16:41:18.000000000 +0200
++++ xc/lib/Xaw3d/Box.c 2009-01-22 18:01:31.712849163 +0100
+@@ -353,8 +353,16 @@
+       else {
+           width = preferred_width;
+           do { /* find some width big enough to stay within this height */
++#if 0 
+               width *= 2;
+               if (width > constraint->width) width = constraint->width;
++#endif
++                if (width > constraint->width/2) {  /* avoid short int overflow */
++                  width = constraint->width;
++              }
++                else { 
++                  width *= 2; 
++              }
+               DoLayout(w, width, 0, &preferred_width, &preferred_height, FALSE);
+           } while (preferred_height > constraint->height &&
+                    width < constraint->width);
+diff -urN xc.org/lib/Xaw3d/MenuButton.c xc/lib/Xaw3d/MenuButton.c
+--- xc.org/lib/Xaw3d/MenuButton.c      1996-10-15 16:41:20.000000000 +0200
++++ xc/lib/Xaw3d/MenuButton.c  2009-01-22 17:59:49.608848820 +0100
+@@ -53,6 +53,8 @@
+ #include <X11/Xaw3d/XawInit.h>
+ #include <X11/Xaw3d/MenuButtoP.h>
++#include "XawAlloc.h"
++
+ static void ClassInitialize();
+ static void PopupMenu();
+@@ -179,9 +181,16 @@
+   if (menu == NULL) {
+     char error_buf[BUFSIZ];
+-    (void) sprintf(error_buf, "MenuButton: %s %s.",
+-          "Could not find menu widget named", mbw->menu_button.menu_name);
+-    XtAppWarning(XtWidgetToApplicationContext(w), error_buf);
++    char *err1 = "MenuButton: Could not find menu widget named ";
++    char *perr;
++    int len;
++
++    len = strlen(err1) + strlen(mbw->menu_button.menu_name) + 1 + 1;
++    perr = XtStackAlloc(len, error_buf);
++    if (perr == NULL) return;
++    sprintf(perr, "%s%s.", err1, mbw->menu_button.menu_name);
++    XtAppWarning(XtWidgetToApplicationContext(w), perr);
++    XtStackFree(perr, error_buf);
+     return;
+   }
+   if (!XtIsRealized(menu))
+diff -urN xc.org/lib/Xaw3d/MultiSrc.c xc/lib/Xaw3d/MultiSrc.c
+--- xc.org/lib/Xaw3d/MultiSrc.c        2000-11-27 14:19:36.000000000 +0100
++++ xc/lib/Xaw3d/MultiSrc.c    2009-01-22 18:01:36.644848876 +0100
+@@ -74,6 +74,9 @@
+ #include <stdio.h>
+ #include <ctype.h>
+ #include <errno.h>
++#include <sys/types.h>
++#include <sys/stat.h>
++#include <fcntl.h>
+ /****************************************************************
+  *
+@@ -736,6 +739,7 @@
+   
+   if ( string_set || (old_src->multi_src.type != src->multi_src.type) ) {
+     RemoveOldStringOrFile(old_src, string_set);
++    src->multi_src.allocated_string = old_src->multi_src.allocated_string;
+     file = InitStringOrFile(src, string_set);
+     /* Load pieces does this logic for us, but it shouldn't.  Its messy.*/
+@@ -1076,7 +1080,9 @@
+     MultiSrcObject src;
+     Boolean newString;
+ {
+-    char * open_mode = NULL;
++    mode_t open_mode = 0;
++    const char *fdopen_mode = NULL;
++    int fd;
+     FILE * file;
+     char fileName[TMPSIZ];
+     Display *d = XtDisplayOfObject((Widget)src);
+@@ -1127,7 +1133,8 @@
+           XtErrorMsg("NoFile", "multiSourceCreate", "XawError",
+                    "Creating a read only disk widget and no file specified.",
+                      NULL, 0);
+-      open_mode = "r";
++      open_mode = O_RDONLY;
++      fdopen_mode = "r";
+       break;
+     case XawtextAppend:
+     case XawtextEdit:
+@@ -1140,9 +1147,17 @@
+           (void) tmpnam(src->multi_src.string);
+           src->multi_src.is_tempfile = TRUE;
+-          open_mode = "w";
+-      } else
+-          open_mode = "r+";
++          open_mode = O_WRONLY | O_CREAT | O_EXCL;
++          fdopen_mode = "w";
++      } else {
++/* O_NOFOLLOW is a BSD & Linux extension */
++#ifdef O_NOFOLLOW 
++              open_mode = O_RDWR | O_NOFOLLOW;
++#else
++              open_mode = O_RDWR; /* unsafe; subject to race conditions */
++#endif
++              fdopen_mode = "r+";
++      }
+       break;
+     default:
+       XtErrorMsg("badMode", "multiSourceCreate", "XawError",
+@@ -1161,11 +1176,14 @@
+     }
+     
+     if (!src->multi_src.is_tempfile) {
+-      if ((file = fopen(src->multi_src.string, open_mode)) != 0) {
+-          (void) fseek(file, (Off_t)0, 2);
+-            src->multi_src.length = ftell (file);
+-          return file;
+-      } else {
++      if ((fd = open(src->multi_src.string, open_mode, 0666))) {
++              if ((file = fdopen(fd, fdopen_mode)) != NULL) {
++                      (void)fseek(file, 0, SEEK_END);
++                      src->multi_src.length = (XawTextPosition)ftell(file);
++                      return (file);
++              }
++      }
++      {
+           String params[2];
+           Cardinal num_params = 2;
+           
+@@ -1177,7 +1195,7 @@
+       }
+     } 
+     src->multi_src.length = 0;
+-    return((FILE *)NULL);
++    return(NULL);
+ #undef StrLen
+ }
+diff -urN xc.org/lib/Xaw3d/MultiSrcP.h xc/lib/Xaw3d/MultiSrcP.h
+--- xc.org/lib/Xaw3d/MultiSrcP.h       1996-10-15 16:41:21.000000000 +0200
++++ xc/lib/Xaw3d/MultiSrcP.h   2009-01-22 17:59:49.604848770 +0100
+@@ -113,7 +113,11 @@
+ #ifdef L_tmpnam
+ #define TMPSIZ L_tmpnam
+ #else
+-#define TMPSIZ 32             /* bytes to allocate for tmpnam */
++#ifdef PATH_MAX
++#define TMPSIZ PATH_MAX
++#else
++#define TMPSIZ 1024           /* bytes to allocate for tmpnam */
++#endif
+ #endif
+ #define MAGIC_VALUE ((XawTextPosition) -1) /* Magic value. */
+diff -urN xc.org/lib/Xaw3d/Scrollbar.c xc/lib/Xaw3d/Scrollbar.c
+--- xc.org/lib/Xaw3d/Scrollbar.c       2003-02-10 18:22:26.000000000 +0100
++++ xc/lib/Xaw3d/Scrollbar.c   2009-01-22 17:59:49.600847742 +0100
+@@ -1049,6 +1049,7 @@
+     if (!event->xmotion.same_screen) return;
+     ExtractPosition (event, &x, &y);
++    
+     loc = FractionLoc (sbw, x, y);
+     t = sbw->scrollbar.top;
+     s = sbw->scrollbar.shown;
+diff -urN xc.org/lib/Xaw3d/Simple.c xc/lib/Xaw3d/Simple.c
+--- xc.org/lib/Xaw3d/Simple.c  2000-11-27 14:19:36.000000000 +0100
++++ xc/lib/Xaw3d/Simple.c      2009-01-22 17:59:49.608848820 +0100
+@@ -56,6 +56,8 @@
+ #include <X11/Xaw3d/SimpleP.h>
+ #include <X11/Xmu/Drawing.h>
++#include "XawAlloc.h"
++
+ #define offset(field) XtOffsetOf(SimpleRec, simple.field)
+ static XtResource resources[] = {
+@@ -148,11 +150,17 @@
+     if (c->simple_class.change_sensitive == NULL) {
+       char buf[BUFSIZ];
+-
+-      (void) sprintf(buf,
+-              "%s Widget: The Simple Widget class method 'change_sensitive' is undefined.\nA function must be defined or inherited.",
+-              c->core_class.class_name);
+-      XtWarning(buf);
++      char *pbuf;
++      char *msg1 = " Widget: The Simple Widget class method 'change_sensitive' is undefined.\nA function must be defined or inherited.";
++      int len;
++
++      len = strlen(msg1) + strlen(c->core_class.class_name) + 1;
++      pbuf = XtStackAlloc(len, buf);
++      if (pbuf != NULL) {
++          sprintf(pbuf, "%s%s", c->core_class.class_name, msg1);
++          XtWarning(pbuf);
++          XtStackFree(pbuf, buf);
++      }
+       c->simple_class.change_sensitive = ChangeSensitive;
+     }
+diff -urN xc.org/lib/Xaw3d/SimpleMenu.c xc/lib/Xaw3d/SimpleMenu.c
+--- xc.org/lib/Xaw3d/SimpleMenu.c      2003-02-17 07:45:07.000000000 +0100
++++ xc/lib/Xaw3d/SimpleMenu.c  2009-01-22 17:59:49.592848829 +0100
+@@ -51,6 +51,8 @@
+ #include <X11/Xmu/Initer.h>
+ #include <X11/Xmu/CharSet.h>
++#include "XawAlloc.h"
++
+ #define streq(a, b)        ( strcmp((a), (b)) == 0 )
+ #define offset(field) XtOffsetOf(SimpleMenuRec, simple_menu.field)
+@@ -755,9 +757,17 @@
+   if ( (menu = FindMenu(w, params[0])) == NULL) {
+     char error_buf[BUFSIZ];
+-    (void) sprintf(error_buf, "%s '%s'",
+-          "Xaw - SimpleMenuWidget: could not find menu named: ", params[0]);
+-    XtAppWarning(XtWidgetToApplicationContext(w), error_buf);
++    char *err1 = "Xaw - SimpleMenuWidget: could not find menu named: ";
++    char *perr;
++    int len;
++
++    len = strlen(err1) + strlen(params[0]) + 2 + 1;
++    perr = XtStackAlloc(len, error_buf);
++    if (perr == NULL)
++      return;
++    sprintf(perr, "%s'%s'", err1, params[0]);
++    XtAppWarning(XtWidgetToApplicationContext(w), perr);
++    XtStackFree(perr, error_buf);
+     return;
+   }
+   
+diff -urN xc.org/lib/Xaw3d/SmeBSB.c xc/lib/Xaw3d/SmeBSB.c
+--- xc.org/lib/Xaw3d/SmeBSB.c  2003-02-16 20:18:28.000000000 +0100
++++ xc/lib/Xaw3d/SmeBSB.c      2009-01-22 18:01:39.716848434 +0100
+@@ -52,6 +52,8 @@
+ #include <X11/Xaw3d/Cardinals.h>
+ #include <stdio.h>
++#include "XawAlloc.h"
++
+ /* needed for abs() */
+ #ifndef X_NOT_STDC_ENV
+ #include <stdlib.h>
+@@ -712,6 +714,8 @@
+     int x, y;
+     unsigned int width, height, bw;
+     char buf[BUFSIZ];
++    char *pbuf;
++    int len;
+     
+     if (is_left) {
+       width = height = 0;
+@@ -720,18 +724,24 @@
+           if (!XGetGeometry(XtDisplayOfObject(w), 
+                           entry->sme_bsb.left_bitmap, &root, &x, &y,
+                           &width, &height, &bw, &entry->sme_bsb.left_depth)) {
+-              (void) sprintf(buf, "Xaw SmeBSB Object: %s %s \"%s\".",
+-                      "Could not get Left Bitmap",
+-                      "geometry information for menu entry",
+-                      XtName(w));
+-              XtAppError(XtWidgetToApplicationContext(w), buf);
++               char *err1 = "Xaw SmeBSB Object: Could not get Left Bitmap geometry information for menu entry ";
++             len = strlen(err1) + strlen(XtName(w)) + 3 + 1;
++               pbuf = XtStackAlloc(len, buf);
++               if (pbuf == NULL) return;
++               sprintf(pbuf, "%s\"%s\".", err1, XtName(w));
++               XtAppError(XtWidgetToApplicationContext(w), pbuf);
++               XtStackFree(pbuf, buf);
+           }
+ #ifdef NEVER
+           if (entry->sme_bsb.left_depth != 1) {
+-              (void) sprintf(buf, "Xaw SmeBSB Object: %s \"%s\" %s.", 
+-                      "Left Bitmap of entry",  XtName(w),
+-                      "is not one bit deep");
+-              XtAppError(XtWidgetToApplicationContext(w), buf);
++               char *err1 = "Xaw SmeBSB Object: Left Bitmap of entry ";
++               char *err2 = " is not one bit deep.";
++               len = strlen(err1) + strlen(err2) + strlen(XtName(w)) + 2 + 1;
++               pbuf = XtStackAlloc(len, buf);
++               if (pbuf == NULL) return;
++               sprintf(pbuf, "%s\"%s\"%s", err1, XtName(w), err2);
++               XtAppError(XtWidgetToApplicationContext(w), pbuf);
++               XtStackFree(pbuf, buf);
+           }
+ #endif
+       }
+@@ -745,18 +755,24 @@
+           if (!XGetGeometry(XtDisplayOfObject(w),
+                           entry->sme_bsb.right_bitmap, &root, &x, &y,
+                           &width, &height, &bw, &entry->sme_bsb.right_depth)) {
+-              (void) sprintf(buf, "Xaw SmeBSB Object: %s %s \"%s\".",
+-                      "Could not get Right Bitmap",
+-                      "geometry information for menu entry",
+-                      XtName(w));
+-              XtAppError(XtWidgetToApplicationContext(w), buf);
++            char *err1 = "Xaw SmeBSB Object: Could not get Right Bitmap geometry information for menu entry ";
++            len = strlen(err1) + strlen(XtName(w)) + 3 + 1;
++            pbuf = XtStackAlloc(len, buf);
++            if (pbuf == NULL) return;
++            sprintf(pbuf, "%s\"%s\".", err1, XtName(w));
++            XtAppError(XtWidgetToApplicationContext(w), pbuf);
++            XtStackFree(pbuf, buf);
+           }
+ #ifdef NEVER
+           if (entry->sme_bsb.right_depth != 1) {
+-              (void) sprintf(buf, "Xaw SmeBSB Object: %s \"%s\" %s.", 
+-                      "Right Bitmap of entry", XtName(w),
+-                      "is not one bit deep");
+-              XtAppError(XtWidgetToApplicationContext(w), buf);
++            char *err1 = "Xaw SmeBSB Object: Right Bitmap of entry ";
++            char *err2 = " is not one bit deep.";
++            len = strlen(err1) + strlen(err2) + strlen(XtName(w)) + 2 + 1;
++            pbuf = XtStackAlloc(len, buf);
++            if (pbuf == NULL) return;
++            sprintf(pbuf, "%s\"%s\"%s", err1, XtName(w), err2);
++            XtAppError(XtWidgetToApplicationContext(w), pbuf);
++            XtStackFree(pbuf, buf);
+           }
+ #endif
+       }
+diff -urN xc.org/lib/Xaw3d/StripChart.c xc/lib/Xaw3d/StripChart.c
+--- xc.org/lib/Xaw3d/StripChart.c      2003-02-10 18:18:00.000000000 +0100
++++ xc/lib/Xaw3d/StripChart.c  2009-01-22 17:59:49.596893228 +0100
+@@ -315,7 +315,15 @@
+        if (w->strip_chart.points != NULL) {
+          w->strip_chart.points[0].x = w->strip_chart.interval + s;
+          XDrawPoints(XtDisplay(w), XtWindow(w), w->strip_chart.hiGC,
+-                     w->strip_chart.points, w->strip_chart.scale,
++              /*
++               * patch:
++               *
++               *     w->strip_chart.points, w->strip_chart.scale,
++               * 
++               * this to avoid a subdle bug of extra spurios scan
++               * line in this widget.
++               */
++                     w->strip_chart.points, w->strip_chart.scale - 1, 
+                      CoordModePrevious);
+        }
+diff -urN xc.org/lib/Xaw3d/Text.c xc/lib/Xaw3d/Text.c
+--- xc.org/lib/Xaw3d/Text.c    2003-02-10 18:28:13.000000000 +0100
++++ xc/lib/Xaw3d/Text.c        2009-01-22 17:59:49.604848770 +0100
+@@ -75,6 +75,8 @@
+ #include <X11/Xfuncs.h>
+ #include <ctype.h>            /* for isprint() */
++#include "XawAlloc.h"
++
+ #ifndef MAX_LEN_CT
+ #define MAX_LEN_CT 6          /* for sequence: ESC $ ( A \xx \xx */
+ #endif
+@@ -520,6 +522,8 @@
+   TextWidget ctx = (TextWidget) new;
+   char error_buf[BUFSIZ];
+   int s;
++  char *perr; /* frankie */
++  size_t len; /* frankie */
+   ctx->text.threeD = XtVaCreateWidget("threeD", threeDWidgetClass, new,
+                                  XtNx, 0, XtNy, 0,
+@@ -568,10 +572,17 @@
+   if (ctx->text.scroll_vert != XawtextScrollNever) 
+     if ( (ctx->text.resize == XawtextResizeHeight) ||
+        (ctx->text.resize == XawtextResizeBoth) ) {
+-      (void) sprintf(error_buf, "Xaw Text Widget %s:\n %s %s.", ctx->core.name,
+-            "Vertical scrolling not allowed with height resize.\n",
+-            "Vertical scrolling has been DEACTIVATED.");
+-      XtAppWarning(XtWidgetToApplicationContext(new), error_buf);
++      char *err1 = "Xaw Text Widget ";
++      char *err2 = ":\nVertical scrolling not allowed with height resize.\n";
++      char *err3 = "Vertical scrolling has been DEACTIVATED.";
++      len = strlen(err1) + strlen(err2) + strlen(err3) +
++              strlen(ctx->core.name) + 1;
++      perr = XtStackAlloc(len, error_buf);
++      if (perr != NULL) {
++      (void) sprintf(perr, "%s%s%s%s", err1, ctx->core.name, err2, err3);
++      XtAppWarning(XtWidgetToApplicationContext(new), perr);
++      XtStackFree(perr, error_buf);
++      }
+       ctx->text.scroll_vert = XawtextScrollNever;
+     }
+     else if (ctx->text.scroll_vert == XawtextScrollAlways)
+@@ -579,18 +590,32 @@
+   if (ctx->text.scroll_horiz != XawtextScrollNever) 
+     if (ctx->text.wrap != XawtextWrapNever) {
+-      (void) sprintf(error_buf, "Xaw Text Widget %s:\n %s %s.", ctx->core.name,
+-            "Horizontal scrolling not allowed with wrapping active.\n",
+-            "Horizontal scrolling has been DEACTIVATED.");
+-      XtAppWarning(XtWidgetToApplicationContext(new), error_buf);
++      char *err1 = "Xaw Text Widget ";
++      char *err2 = ":\nHorizontal scrolling not allowed with wrapping active.";
++      char *err3 = "\nHorizontal scrolling has been DEACTIVATED.";
++      len = strlen(err1) + strlen(err2) + strlen(err3) +
++              strlen(ctx->core.name) + 1;
++      perr = XtStackAlloc(len, error_buf);
++      if (perr != NULL) {
++      (void) sprintf(perr, "%s%s%s%s", err1, ctx->core.name, err2, err3);
++      XtAppWarning(XtWidgetToApplicationContext(new), perr);
++      XtStackFree(perr, error_buf);
++      }
+       ctx->text.scroll_horiz = XawtextScrollNever;
+     }
+     else if ( (ctx->text.resize == XawtextResizeWidth) ||
+             (ctx->text.resize == XawtextResizeBoth) ) {
+-      (void) sprintf(error_buf, "Xaw Text Widget %s:\n %s %s.", ctx->core.name,
+-            "Horizontal scrolling not allowed with width resize.\n",
+-            "Horizontal scrolling has been DEACTIVATED.");
+-      XtAppWarning(XtWidgetToApplicationContext(new), error_buf);
++      char *err1 = "Xaw Text Widget ";
++      char *err2 = ":\nHorizontal scrolling not allowed with width resize.\n";
++      char *err3 = "Horizontal scrolling has been DEACTIVATED.";
++      len = strlen(err1) + strlen(err2) + strlen(err3) +
++              strlen(ctx->core.name) + 1;
++      perr = XtStackAlloc(len, error_buf);
++      if (perr != NULL) {
++      (void) sprintf(perr, "%s%s%s%s", err1, ctx->core.name, err2, err3);
++      XtAppWarning(XtWidgetToApplicationContext(new), perr);
++      XtStackFree(perr, error_buf);
++      }
+       ctx->text.scroll_horiz = XawtextScrollNever;
+     }
+     else if (ctx->text.scroll_horiz == XawtextScrollAlways)
+diff -urN xc.org/lib/Xaw3d/TextPop.c xc/lib/Xaw3d/TextPop.c
+--- xc.org/lib/Xaw3d/TextPop.c 2000-11-27 14:19:36.000000000 +0100
++++ xc/lib/Xaw3d/TextPop.c     2009-01-22 17:59:49.600847742 +0100
+@@ -66,6 +66,8 @@
+ #include <X11/Xos.h>          /* for O_RDONLY */
+ #include <errno.h>
++#include "XawAlloc.h"
++
+ #ifdef X_NOT_STDC_ENV
+ extern int errno;
+ #endif
+@@ -809,6 +811,8 @@
+ struct SearchAndReplace * search;
+ {
+   char msg[BUFSIZ];
++  char *pmsg;
++  int len;
+   Widget tw = XtParent(search->search_popup);
+   XawTextPosition pos;
+   XawTextScanDirection dir;
+@@ -835,9 +839,20 @@
+    /* The Raw string in find.ptr may be WC I can't use here, so I re - call 
+    GetString to get a tame version. */
+-  if (pos == XawTextSearchError) 
+-    (void) sprintf( msg, "Could not find string ``%s''.", GetString( search->search_text ) );
+-  else {
++  if (pos == XawTextSearchError) {
++    char *msg1 = "Could not find string ``";
++    char *msg2 = "''.";
++    len = strlen(msg1) + strlen(msg2) +
++              strlen(GetString( search->search_text )) + 1;
++    pmsg = XtStackAlloc(len, msg);
++    if (pmsg != NULL) {
++      (void) sprintf( pmsg, "%s%s%s", msg1, GetString( search->search_text ),
++                      msg2);
++    } else {
++      pmsg = msg;
++      (void) sprintf( pmsg, "Could not find string");
++    }
++  } else {
+     if (dir == XawsdRight)
+       XawTextSetInsertionPoint( tw, pos + text.length);
+     else
+@@ -849,7 +864,8 @@
+   }
+   
+   XawTextUnsetSelection(tw);
+-  SetSearchLabels(search, msg, "", TRUE);
++  SetSearchLabels(search, pmsg, "", TRUE);
++  XtStackFree(pmsg, msg);
+   return(FALSE);
+ }
+@@ -982,13 +998,26 @@
+       if ( (new_pos == XawTextSearchError) ) {
+       if (count == 0) {
+         char msg[BUFSIZ];
++        char *pmsg;
++        int len;
++        char *msg1 = "*** Error: Could not find string ``";
++        char *msg2 = "''. ***";
+              /* The Raw string in find.ptr may be WC I can't use here, 
+               so I call GetString to get a tame version.*/
+-        (void) sprintf( msg, "%s %s %s", "*** Error: Could not find string ``",
+-                GetString( search->search_text ), "''. ***");
+-        SetSearchLabels(search, msg, "", TRUE);
++        len = strlen(msg1) + strlen(msg2) +
++              strlen(GetString( search->search_text )) + 1;
++        pmsg = XtStackAlloc(len, msg);
++        if (pmsg != NULL) {
++          (void) sprintf( pmsg, "%s%s%s", msg1,
++                              GetString( search->search_text ), msg2);
++        } else {
++          pmsg = msg;
++          (void) sprintf(pmsg, "*** Error: Could not find string ***");
++        }
++        SetSearchLabels(search, pmsg, "", TRUE);
++        XtStackFree(pmsg, msg);
+         return(FALSE);
+       }
+       else
+@@ -1011,9 +1040,22 @@
+     if (XawTextReplace(tw, pos, end_pos, &replace) != XawEditDone) {
+       char msg[BUFSIZ];
+-      
+-      (void) sprintf( msg, "'%s' with '%s'. ***", find.ptr, replace.ptr);
++      char *pmsg;
++      int len;
++      char *msg1 = "' with '";
++      char *msg2 = "'. ***";
++
++      len = 1 + strlen(msg1) + strlen(msg2) + strlen(find.ptr) +
++              strlen(replace.ptr) + 1;
++      pmsg = XtStackAlloc(len, msg);
++      if (pmsg != NULL) {
++      (void) sprintf( pmsg, "`%s%s%s%s", find.ptr, msg1, replace.ptr, msg2);
++      } else {
++      pmsg = msg;
++      (void) sprintf(pmsg, "string ***");
++      }
+       SetSearchLabels(search, "*** Error while replacing", msg, TRUE);
++      XtStackFree(pmsg, msg);
+       return(FALSE);
+     }      
+@@ -1164,13 +1206,20 @@
+ {
+   Widget temp_widget;
+   char buf[BUFSIZ];
++  char *pbuf;
++  int len;
+-  (void) sprintf(buf, "%s.%s", FORM_NAME, name);
++  len = strlen(FORM_NAME) + strlen(name) + 2;
++  pbuf = XtStackAlloc(len, buf);
++  if (pbuf == NULL) return FALSE;
++  (void) sprintf(pbuf, "%s.%s", FORM_NAME, name);
+-  if ( (temp_widget = XtNameToWidget(shell, buf)) != NULL) {
++  if ( (temp_widget = XtNameToWidget(shell, pbuf)) != NULL) {
+     SetResource(temp_widget, res_name, value);
++    XtStackFree(pbuf, buf);
+     return(TRUE);
+   }
++  XtStackFree(pbuf, buf);
+   return(FALSE);
+ }
+diff -urN xc.org/lib/Xaw3d/XawAlloc.h xc/lib/Xaw3d/XawAlloc.h
+--- xc.org/lib/Xaw3d/XawAlloc.h        1970-01-01 01:00:00.000000000 +0100
++++ xc/lib/Xaw3d/XawAlloc.h    2009-01-22 17:59:49.608848820 +0100
+@@ -0,0 +1,10 @@
++/* $XFree86: xc/lib/Xaw/XawAlloc.h,v 1.1.2.1 1998/05/16 09:05:23 dawes Exp $ */
++
++#define XtStackAlloc(size, stack_cache_array)     \
++    ((size) <= sizeof(stack_cache_array)          \
++    ?  (XtPointer)(stack_cache_array)             \
++    :  XtMalloc((unsigned)(size)))
++     
++#define XtStackFree(pointer, stack_cache_array) \
++    if ((pointer) != ((XtPointer)(stack_cache_array))) XtFree(pointer); else
++
+diff -urN xc.org/lib/Xaw3d/XawI18n.h xc/lib/Xaw3d/XawI18n.h
+--- xc.org/lib/Xaw3d/XawI18n.h 1996-10-15 16:41:26.000000000 +0200
++++ xc/lib/Xaw3d/XawI18n.h     2009-01-22 17:59:49.608848820 +0100
+@@ -27,6 +27,8 @@
+ ********************************************************/
++/* Mod for Debian by Joey Hess, do not include widec.h */
++#if 0
+ #ifdef HAS_WCTYPE_H
+ #include <wctype.h>
+ #include <widec.h>
+@@ -34,6 +36,7 @@
+ #define wcscpy(d,s) wscpy(d,s)
+ #define wcsncpy(d,s,l) wsncpy(d,s,l)
+ #endif
++#endif /* 0 */
+ #ifdef HAS_WCHAR_H
+ #include <wchar.h>
+diff -urN xc.org/Xdefault xc/Xdefault
+--- xc.org/Xdefault    1970-01-01 01:00:00.000000000 +0100
++++ xc/Xdefault        2009-01-22 17:59:49.588848848 +0100
+@@ -0,0 +1,17 @@
++!this is an example of a .Xdefaults file to be used with the Xaw3d
++!widget set.
++
++!  To obtain an appearance similar to another well known widget set, use the 
++!  following resources:
++*background:        LightSkyBlue
++*shapeStyle:        Rectangle
++*beNiceToColormap:  False
++
++!  By default, Label widgets do not have shadows drawn for them.  You can
++!  force shadows to be drawn for specifying:
++*Label*shadowWidth: 2
++
++!If you'd like the default behavior (i.e. not 3-D) on pulldown menus, use:
++! (uncomment next line:)
++!*SmeBSB*shadowWidth: 0
++
This page took 0.479566 seconds and 4 git commands to generate.