Commit Graph

63 Commits

Author SHA1 Message Date
Jon Trulson 9a3a9e3010 Revert "dtfile: coverity CIDs 88363,88405,89140,89612; insecure readlink"
This reverts commit 7fa35c29c4.
2018-04-05 15:44:37 -06:00
Jon Trulson 70f85d77cc dtfile/sharedFuncs: CID 88085; resource leak 2018-04-05 13:28:04 -06:00
Jon Trulson caa95ba67c dtfile: define MAX_PATH to PATH_MAX rather than 1024, also CID 87557 2018-04-05 12:49:06 -06:00
Jon Trulson f7d09f054d dtfile/SharedProcs.c: rework coverity 174852 fix to unbreak dtfile 2018-04-03 21:28:49 -06:00
Jon Trulson 3020b050ff dtfile/File.c: coverity CID 88919; uninit array read 2018-04-01 14:21:57 -06:00
Jon Trulson 7fa35c29c4 dtfile: coverity CIDs 88363,88405,89140,89612; insecure readlink 2018-04-01 13:46:04 -06:00
Jon Trulson b4c4fb594d dtfile/SharedProcs.c: coverity CID 174852; int overflow 2018-03-31 19:12:32 -06:00
Jon Trulson ec93faffe7 dtfile/Help.c: coverity CID 88484; use after free 2018-03-31 18:11:14 -06:00
Jon Trulson a8102e85e0 dtfile/Main.c: coverity CID 89623; uninit var 2018-03-31 17:34:40 -06:00
Jon Trulson e7269115b5 dtfile/sharedFuncs.c: coverity CID 88625; use after free 2018-03-31 17:25:35 -06:00
Jon Trulson c32b5db653 dtfile/SharedProcs.c: coverity CID 89068; use after free 2018-03-31 17:21:34 -06:00
alx 39031e9dea dtfile: added Xinerama support to dialog positioning routines 2016-12-31 15:14:49 -07:00
alx b251a15844 dtfile: Enable FILE_MAP_OPTIMIZE on Linux. This avoids unnecessary tt_file_netfile calls on local host. 2016-04-18 19:16:48 -06:00
alx ff7c7d72cf dtfile: Enable FILE_MAP_OPTIMIZE on FreeBSD. This avoids unnecessary tt_file_netfile calls on local host. 2016-04-18 19:16:47 -06:00
alx 307981f3e5 dtfile: fixed ambiguity in the translation table 2015-07-23 18:51:39 -06:00
alx 84f725bd54 dtfile: fixed file view scrolling with Page Up/Down keys 2015-07-23 18:51:34 -06:00
alx 5c6ddfd0c1 dtfile: 0 is not NULL 2015-07-16 19:21:18 -06:00
alx bd4a4532f0 dtfile: fixed double free in copy/move collision handler 2015-07-02 17:50:21 -06:00
Ulrich Wilkens 8b38d9ea49 Fix broken build on OpenBSD 2015-05-09 16:21:32 -06:00
Peter Howkins d3dbc00c1f dtfile: Resolve CID 89277 2015-01-15 15:37:32 +00:00
Peter Howkins 6a86dba654 dtfile: Resolve CID 88830 2015-01-15 15:30:59 +00:00
Peter Howkins 639081c8f1 dtfile: Resolve CID 89009 2015-01-15 15:26:22 +00:00
Peter Howkins 17ef8a8b34 dtfile: Resolve CID 89319 2015-01-15 15:25:13 +00:00
Peter Howkins 1ed848709d dtfile: Resolve CID 88199 2015-01-15 15:23:24 +00:00
Peter Howkins 7f70f509c8 dtfile: Resolve CID 88133, 88261 2015-01-15 15:18:21 +00:00
Peter Howkins 24880e4e05 dtfile: Resolve CID 87776. OkCallback is of type XtCallbackProc, it doesn't return one 2015-01-15 15:15:31 +00:00
Peter Howkins 74afeadda3 dtfile: Resolve CID 87308 2015-01-15 15:05:45 +00:00
Peter Howkins 22830f478a dtfile: resolve 19 compiler warnings. 2015-01-09 16:16:53 +00:00
alx 123d4ba8fc dtcopy: Fix file removal 2014-12-28 12:53:39 -07:00
Ulrich Wilkens 01d6c363fa OpenIndiana and Solaris port 2014-10-28 13:40:11 -06:00
Eugene Doudine a9dbe60805 Fixes a small bug in grid registration: when an object is placed over another object (can be done manually) and then removed from there, the registration of the covered object is removed as well (that is it's cell is considered empty).
The patch converts desktop_grid[] from Boolean array into array of
counters of objects, which are placed on cells. When object is
placed on /removed from   the screen  the counter gets incremented/decremented.
2014-04-19 18:57:57 -06:00
Eugene Doudine 5544a0fb39 Fixes several issues with grid registration of the dtwm panel on dtfile startup and on workspace addition:
The panel registration code rather stupidly assumed that display
  size is always 1280x1024 pixels. Because of this, depending on screen
  size, the panel could be registered somewhere in the center of the screen
  or completely or partially beyond of it.

  The panels were registered only on startup, not  those, which were added
  from UI.

The fix moves panel registration into separate routine and removes assumption
about display size. The fix yet is not complete since it still makes assumption
about panel's geometry: from dtfile there is still no way to find out
dinamically  the size of panel and it's location.
2014-04-19 18:57:57 -06:00
Eugene Doudine 8bafd85d9a Fixes the off-by-one bug in RegisterInGrid(), which caused dtfile's desktop icons on the right edge of the screen (if desktop width is not a multiple of icon with) to be registered on the next workspace or (in the case of the last workspace) beyond the desktop_grid array (possibly causing segfaults).
On small screens segfaults could be also triggered without any icons on dtfile
startup if dtwm panel (or part of it) was registered beyond the screen when
RegisterInGrid() was called by InitializeDesktopGrid().

The patch also makes grid registration work for large objects (larger than
2 cells in any direction, like dtwm panel or icon with long file name).
Previously only rectangle vertices were registered.
2014-04-19 18:57:57 -06:00
Eugene Doudine 3ed9f06cce Fixed bug #32 dtfile table formatting bug with non-latin filenames 2014-03-23 13:53:44 -06:00
Eugene Doudine 5e9185dda5 Fixed bug #27 dtfile space handling bug 2014-03-23 13:53:44 -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
alx 9dd8ea27bf dtfile: fclose called twice on same handle 2014-02-22 19:05:47 -07:00
Ulrich Wilkens 6b0da8f335 Introduction of BSDArchitecture 2013-10-20 16:23:40 -06:00
Ulrich Wilkens 2d08153289 correction of message files 2013-09-15 19:35:53 -06:00
Pascal Stumpf d821557ca4 Use same SIGCHLD handling for OpenBSD as for OSF. 2012-11-20 17:17:18 -07:00
Pascal Stumpf b64f79b1b8 On OpenBSD, use FILE_MAP_OPTIMIZED.
This has the effect of not performing a tt call each time in
ResolveLocalPathName() if we're on the local host anyway.  Drastically reduces
dtfile startup time.
2012-11-19 19:44:32 -07:00
Marcin Cieslak aacfe3e5de dtfile: Fix crash when trying to open filter dialog
On 64-bit machine dtfile crashes when opening
list of file types to filter in Encaps.c:

   _DtShowDialog (parent=0x805c80900, map_parent=0x0, top_rec=0x805ce3600,
     dialog_data=0x805db25e0, change_proc=0x4489f0 <FilterChange+16>,
     change_data=0x805ce3600, close_proc=0x4489c0 <FilterClose+16>,
     close_data=0x805ce3600, workspaces=0x0, iconify_state=0 '\0',
     ignoreCache=0 '\0', title=0x0, classHints=0x0) at Encaps.c:531

531	        ResetFlag(NULL,fr->close);
2012-10-02 18:57:12 -06:00
Marcin Cieslak 7948362829 dtfile: fix crash in RecheckFlag (64bit) 2012-09-28 19:13:29 -06:00
Marcin Cieslak 917f7da191 157 warnings: remove -DXK_MISCELLANY from Makefiles
Fixes the following warning:

In file included from ../../../imports/x11/include/X11/Xutil.h:54,
                 from ../../../imports/x11/include/X11/Intrinsic.h:54,
                 from Action.c:64:
../../../imports/x11/include/X11/keysym.h:49:1: warning: "XK_MISCELLANY" redefined
<command-line>: warning: this is the location of the previous definition

<keysym.h> which includes all key symbols and loads <keysymdef.h>
is automaticlly included by the X Toolkit.

This patch removes #include <keysymdef.h> whenever not needed,
and adds #define XK_MISCALLANY in the source code where required.
2012-09-24 18:30:21 -06:00
Marcin Cieslak 18a78bbff5 dtfile: fix pointer to integer conversion
Use XtArgVal (usually (long)) to convert
(XtPointer) to (int) and back.

This provides safe way to convert and
avoids compiler warning.
2012-09-23 19:38:40 -06:00
Marcin Cieslak 1041e08003 Fix dtfile crash on 64 bit
When asking for data using XtVaGetValue()
make sure that there is enough place for
the return value (which is sometimes XtPointer).
Providing pointer to (int) is not enough.

Cast XtPointer into requested int types
directly, which unfortunately introduces
compilation warning:

cast from pointer to integer of different size
2012-09-22 19:04:21 -06:00
Marcin Cieslak 1079b56422 dtfile: Add missing prototypes
Add missing prototypes and header files to the dtfile
code in order to move closer towards 64-bit compatibility.

Extract the following functions from Motif internal headers:

_XmGetWidgetExtData
_XmRecordEvent
_XmStringUngenerate
_XmTextFieldSetDestination
_XmGetActiveTopLevelMenu

Extract manually prototypes of the obsolete Motif interface:
_XmHighlightBorder
_XmUnhighlightBorder

Remove XmPrivate.h if extractprototype.awk fails

Make the following header files available via -I:
	codelibs/boolean.h
	codelibs/pathutils.h
	codelibs/shellutils.h
and remove shellutils.h from dtwm directory.
2012-09-18 09:59:11 -06:00
Jon Trulson a29fc20957 message catalogs: fix comment lines, also remove linux hack in merge.c
According to the spec, blank lines in message catalogs or lines
beginning with '$ ' are valid comments.

However, there were many cases where lines in the message catalogs
contained just a single '$', without the required space after it.

Under linux, this caused 126766 error lines (in my builds) of the
form:

... unknown directive `': line ignored

This also causes gencat to exit with a non-0 exit code.  Even though
gencat says it ignores the line, it really doesn't.

An early porting change to programs/localized/util/merge.c was made to
ignore this return value on linux.  This hack has now been removed.

Build logs are a lot smaller and cleaner now.
2012-09-03 15:12:57 -06:00
Peter Howkins 764a0c7e72 dtfile: Remove 97 compiler warnings 2012-08-30 19:54:01 +01:00