Fixes the off-by-one bug in RegisterInGrid(), which caused dtfile's desktop icons...
authorEugene Doudine <dudinea@gmail.com>
Tue, 15 Apr 2014 13:50:21 +0000 (16:50 +0300)
committerJon Trulson <jon@radscan.com>
Sun, 20 Apr 2014 00:57:57 +0000 (18:57 -0600)
commit8bafd85d9a9daa9426d8ba3dc6a6a3f4ca16afd6
treefc69e1b4e062b0c760ea12ab594f5f5cfa94ce9d
parent1e2bdf93a8fad9d2c2a0825e1d4b53294e13c00a
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.
cde/programs/dtfile/Desktop.c