Commit Graph

65 Commits

Author SHA1 Message Date
Lev Kujawski a6ea2a2d52 Centralize catgets() calls through MsgCat
CDE has relied upon catgets() implementations following a relaxed
interpretation of the XPG internationalization standard that ignored
-1, the standard error value returned by catopen, as the catalog
argument. However, this same behavior causes segmentation faults with
the musl C library.

This patch:

- Centralizes (with the exception of ToolTalk) all calls to catopen(),
  catgets(), and catclose() through MsgCat within the DtSvc library.
- Prevents calls to catgets() and catclose() that rely upon
  undefined behavior.
- Eliminates a number of bespoke catgets() wrappers, including multiple
  redundant caching implementations designed to work around a design
  peculiarity in HP/UX.
- Eases building CDE without XPG internationalization support by providing
  the appropriate macros.
2021-06-02 19:55:15 -06:00
Jon Trulson 487305f7cf dtappbuilder: fixes to build in autotools branch for freebsd 2021-06-01 18:23:37 -06:00
Chase 14c3c6ebd8 dtappbuilder: make it build in parallel 2021-02-21 18:42:42 -07:00
Jon Trulson ece5c0ea14 Merge branch 'master' into autotools-conversion
Lost the ksh93 submodule so will re-add in a later commit.
2021-01-30 19:04:10 -07:00
Lev Kujawski 325132735b Use the C99 standard va_copy if possible for compatibility with the musl C library. 2021-01-10 18:08:00 -07:00
Jon Trulson 90e61dda5f Merge branch 'master' into autotools-conversion 2020-11-24 16:53:24 -07:00
Peter Howkins 361b8f1456 dtappbbuilder: Resolve GCC 10 errors about multiple definitions of global variables 2020-11-24 02:19:05 +00:00
Jon Trulson e5914dd108 dtappbuilder/src/ab: disable parallel builds
Due to the way dtcodegen works, we can't use parallel builds (-j) in
this directory without corrupting things and generating build errors.
2020-09-05 16:20:13 -06:00
Chase 65d2062518 dtappbuilder: make it build under autotools 2020-09-05 15:49:46 -06:00
Jon Trulson 730da7747c Change "if SUN" conditionals in remaining Makefile.am files to "if SOLARIS" 2019-10-28 18:54:17 -06:00
Chase 41d3e651b4 programs/dtappbuilder: add automake files 2019-10-23 15:34:20 -06:00
Jon Trulson f4776c21d7 dtappbuilder: remove register keyword 2018-06-27 22:00:56 -06:00
Peter Howkins bb7ac1f24e dtappbuilder: Change to ANSI function definitions 2018-06-28 04:08:35 +01:00
chase 809c3d8bb6 Spelling fixes 2018-05-31 22:23:19 -06:00
Ulrich Wilkens 297b6bd845 Fix warnings on FreeBSD 2018-05-31 22:04:08 -06:00
Ulrich Wilkens 885b65a09a Fixes for OpenBSD 2018-05-31 21:48:07 -06:00
Ulrich Wilkens 16fbb15ecc Fix BSD and Sun problems after coverity fixes 2018-05-31 17:46:03 -06:00
chase 4f5e7fe5e3 Use POSIX macros for linux 2018-05-24 18:22:55 -06:00
chase 164e695cd0 remove OSF1 support 2018-05-24 14:25:26 -06:00
chase 07900bd93b Remove Unixware and openserver support 2018-05-20 12:13:07 -06:00
chase 8a4f389634 Remove UXPDS support 2018-05-15 20:27:22 -06:00
Peter Howkins ad373101d6 dtappbuilder: Coverity fixes mostly related to uninitialised variables 2018-05-01 19:02:14 +01:00
chase 33d2749ea3 Last of the spelling fixed 2018-04-28 12:36:44 -06:00
chase 6d3a19d8f9 Even more spelling fixed 2018-04-28 12:36:33 -06:00
chase 1fe5a550b2 Fix typo in license headers 2018-04-28 12:30:20 -06:00
Peter Howkins a135a89876 dtappbuilder: Further coverity, resource leaks, copy intofixed size buffer and dereference before null checl 2018-04-28 02:51:10 +01:00
Peter Howkins 73dafa91e7 dtappbuilder: Fix for very wrong sized buffer 2018-04-26 01:50:33 +01:00
Peter Howkins bb9eef427f dtappbuilder: Coverity fixes for mising return value and copy into fixed size buffer 2018-04-26 01:36:02 +01:00
Peter Howkins 4007d3a460 dtappbuilder: Resolve all compiler warnings 2018-04-24 21:55:56 +01:00
Jon Trulson ae6b787c66 dtbuilder/Imakefile: fix clean target to remove dtbuilder executable 2018-04-12 13:38:38 -06:00
Jon Trulson 129ef945b9 dtappbuilder: Add patches from Robert Pangrazio fixing coredumps 2017-08-05 18:49:07 -06:00
Jon Trulson 6bc5c658b8 dtappbuilder: replace accidental %a with %% in write_func_as_strings() 2015-12-18 10:28:37 -07:00
Jon Trulson 2e7ab68300 dtappbuilder: Coverity (memory corruption) 2014-12-26 14:14:32 -07:00
Ulrich Wilkens 01d6c363fa OpenIndiana and Solaris port 2014-10-28 13:40:11 -06:00
Ulrich Wilkens 42e891d9e7 Resolve many build warnings
This patch fixes many warnings from the beginning of the build up to
and including the depend stage. Nearly all warnings should be gone
even with -Wall.
2014-09-23 17:57:50 -06:00
Jon Trulson 2bf29e5d63 dtappbuilder: abmf.c: more warnings killed 2014-09-20 20:10:01 -06:00
Jon Trulson bf399748ad dtappbuilder/dtcodegen: Fix up some warnings, remove use of sys_errlist[].
Removed all the cases of sys_errlist[], no one should be using that
today.  Also, correct code generation so that declarations like
'Widget w = NULL; Pixmap p = NULL;' etc, aren't produced, which is
wrong.  Use '0', not NULL for these.

This should also correct the 2 mis-definitions of Pixmap that commit
6a9327f2ab attempted to fix in ttsnoop.

dtappbuilder still needs a lot of work.
2014-09-20 16:47:11 -06:00
Jon Trulson 1e2bdf93a8 dtappbuilder: bil_store.c: don't return local variables 2014-04-06 16:59:56 -06:00
Peter Tribble 468d576030 initial illumos port 2014-03-22 16:33:11 -06:00
Ulrich Wilkens d24fd29b52 Fix dtfile and dtterm on NetBSD 2014-03-11 13:06:55 -06:00
Ulrich Wilkens 2712d5f787 NetBSD port 2014-02-22 19:12:19 -07:00
Ulrich Wilkens 8fd8a8a4db Fix dtappbuilder on Linux 2012-10-16 21:04:57 -06:00
Jelle Hermsen b8862cab32 Changed a couple of ifdefs for __FreeBSD__ to CSRG_BASED. These are all clearcut cases. I left the ones I had doubts about, or where I wasn't sure about the OpenBSD side of things to look at later. 2012-10-03 17:06:57 -06:00
James Woodcock 407bb371f2 Remove unnecessary extern modifier from struct declaration. 2012-09-27 18:01:09 -06:00
Ulrich Wilkens 9a34624e25 Fix for __va_copy on FreeBSD i386. 2012-09-05 19:28:31 -06:00
Marcin Cieslak a35975a334 FreeBSD does not need extern char *sys_errlist[]
Add preprocessor directives not to try
to redefine sys_errlist[] or sys_nerr

There are already definitions:

 extern __const char *__const sys_errlist[];
 extern __const int sys_nerr;

in <stdio.h>

Actually we should have something like
NeedSysErrlist in imake definitions
to get rid of those #ifdefs.
2012-08-15 15:58:46 -06:00
Jon Trulson ee03634a10 dtbuilder: manually fix up istr.h (from Pascal) since the broken patch had already been reverted. 2012-08-13 19:48:57 -06:00
Pascal Stumpf 1177e21080 WIP to make dtbuilder work on 64bit.
Fixes many, though not all 64bit-warnings.  In lots of places, pointers are
cast to ints to be then used as array subscripts.  The only way to deal with
this is to change them to long.  Additionally, use calloc() to allocate the
int_array in istr.c and drop the (wrong) macro patch to istr.h.  Should make
dtbuilder work on 32bit again.
2012-08-13 19:42:44 -06:00
Jon Trulson 3b06b6a6b7 Revert "At least on OpenBSD/amd64, this macro returns a bogus value if its argument is NULL."
This reverts commit 0d2f7866ac.

This causes great mayhem in building/generating dtbuilder .msg files
(corrupting them, and inserting '(nil)' all over the place).

These would cause dtbuilder, and any other program built by dtcodegen
to have screwed up colors, missing callbacks and other mayhem.

This was confirmed by others on the list - reverting this made those
issues go away.

It may be that the int -> long is correct, but the NULL check
certainly does not seem to do what was intended.  I'll leave it up to
Pascal to investigate :)
2012-08-13 18:18:52 -06:00
Pascal Stumpf 0bbd4ff9aa Get rid of malloc.h.
This is a non-POSIX/ISO-C header.  It is ok to include this on Linux, but it
is obsolete on BSD; FreeBSD even throws an error if you include it with
__STDC__ defined.  Every system should nowadays have malloc() defined in
stdlib.h.

Diff is largely mechanical, replacing malloc.h with stdlib.h where it is not
yet included anyway.
2012-08-12 14:20:58 -06:00