Commit Graph

813 Commits

Author SHA1 Message Date
James McDonald
7c4a8f3b51 Fix stat patch to use lstat(2) and fix logic 2015-04-23 21:42:34 +02:00
James McDonald
4cb6e0b17b Add an additional stat() check if a d_type check fails for kbfunc_exec lookups
Some filesystems (eg XFS) don't populate the d_type field of struct
dirent, used by kbfunc_exec to filter paths. This patch does an
additional stat() check for any file that fails the d_type check which
will work correctly on these filesystems.
2015-04-12 19:08:34 +02:00
Christian Neukirchen
da1021c60c queue.h: update. 2015-04-06 19:47:04 +02:00
Christian Neukirchen
ffbfc32999 add reallocarray.c 2015-03-29 18:12:47 +02:00
okan
bc21e4aa37 cvsimport 2015-03-29 00:21:05 +00:00
okan
557cd382dc plug a leak 2015-03-29 00:21:05 +00:00
okan
a4a414b68b Introduce a xreallocarray and convert a few xcalloc instances that do
not require zero'ing.
2015-03-28 23:12:47 +00:00
okan
0bbe0ad98c Reshuffle and slightly simplify menu_complete_path(), removing an
allocation, for tab-completion; checked by Alexander Polakov as well.
2015-03-28 22:09:10 +00:00
okan
5b64e1540c plug a leak 2015-03-28 21:55:48 +00:00
okan
bad97699f9 Simplify key/mb binding moving argtype into flags and dropping another
variable; removes the need to zero out struct binding, leaving a simple
malloc.
2015-03-26 21:41:43 +00:00
okan
ac42dff6c1 simplify error messages; discussed with doug@ 2015-02-14 18:24:12 +00:00
Christian Neukirchen
668da8493a cvsimport 2015-02-11 14:20:35 +00:00
Christian Neukirchen
81c05b3a51 Merge pull request #8 from afh/pull/macosx
Use _POSIX_HOST_NAME_MAX
2015-02-11 15:19:03 +01:00
Alexis Hildebrandt
9cfb9225ed Use _POSIX_HOST_NAME_MAX
to be able to compile under Mac OS X.
2015-02-11 15:11:43 +01:00
okan
7e0c2e7728 calloc -> malloc 2015-01-24 18:16:59 +00:00
Christian Neukirchen
976d77c76d update imported str*.c 2015-01-24 19:04:46 +01:00
Christian Neukirchen
b7a8c11750 update README 2015-01-24 18:31:20 +01:00
Christian Neukirchen
e4ccad30ce cvsimport 2015-01-24 17:03:58 +00:00
okan
d8fa58bb62 use malloc over calloc here 2015-01-23 20:26:36 +00:00
okan
5146f661bd First restore net_wm_state(ewmh), then wm_state(iccc); prevents clients
from re-hiding on restart due to flag toggling (note that this is ripe
for re-vamping). Behavior only observed on restarts.

Problem found by, and initial patch from, Henri Kemppainen (thanks!),
though ever so slightly different one applied.
2015-01-23 19:35:11 +00:00
Christian Neukirchen
742732a1c8 cvsimport 2015-01-22 11:06:01 +01:00
okan
7936b9b2a7 Switch to limits.h; replace MAXPATHLEN and MAXHOSTNAMELEN with PATH_MAX
and HOST_NAME_MAX+1, respectively.

ok doug@
2015-01-19 14:54:16 +00:00
okan
c412f040df Catch up with src parse.y changes by jsg@:
Don't allow embedded nul characters in strings.
Fixes a pfctl crash with an anchor name containing
an embedded nul found with the afl fuzzer.

pfctl parse.y patch from and ok deraadt@
2015-01-17 02:05:03 +00:00
okan
8d1eb202bf Add gcc format attributes for yyerror(); fix a few yyerror() calls.
Adapted from src parse.y changes by doug@. OK doug@
2015-01-16 18:28:08 +00:00
Christian Neukirchen
089ec389dd also sign releases with signify 2014-12-15 16:00:31 +01:00
Daniel Néri
56fad8271d Fix reference to OpenBSD's CVS repo web interface 2014-12-15 15:51:15 +01:00
okan
9cada703b9 no need for calloc(1,.. here, malloc is fine since we initialize 2014-10-08 15:31:01 +00:00
okan
501aa2bcf3 cvsimport 2014-10-08 15:31:01 +00:00
okan
836c9f49d6 make group_init work like other *_init's 2014-10-08 12:48:51 +00:00
okan
c700f7e19a cvsimport 2014-09-27 19:04:32 +00:00
okan
e9dbd150ea these have nothing to do with 'sticky', but rather group membership; rename. 2014-09-27 19:04:32 +00:00
okan
319d90099d Pass just the group to group_setactive instead of the screen and an
index which then needed to be found in a queue.
2014-09-27 18:57:11 +00:00
okan
845e82015c Update _NET_CURRENT_DESKTOP with the screen's group_active->num. 2014-09-23 14:25:08 +00:00
okan
cb65869d7a Move stuff that doesn't belong in group_init; while here, explicitly
initialize hideall and cycling.
2014-09-23 13:45:48 +00:00
okan
2540b3f4fe cvsimport 2014-09-18 13:56:58 +00:00
okan
cbc7f76074 Move motion time check to the top of each MotionNotify block (and
eliminate from ButtonRelease); further limits the amount of work done
outside the threshold, notably mousefunc_sweep_calc,
screen_find_xinerama and client_snapcalc.
2014-09-18 13:56:58 +00:00
okan
8fd0f43ec2 these client actions are just toggles; less confusing with better names 2014-09-17 18:41:44 +00:00
okan
458dd31b93 ewmh states _NET_WM_STATE_STICKY should not alter position 2014-09-17 18:09:30 +00:00
okan
736d973f46 Use a similarly named check as sticky for hidden check in a group. 2014-09-17 16:32:53 +00:00
okan
7eef4eb63d don't toggle _WM_STATE_HIDDEN here yet 2014-09-17 16:30:21 +00:00
okan
a61812d52d Implement EWMH _NET_WM_STATE_HIDDEN. 2014-09-17 16:00:44 +00:00
okan
74f4a1bad9 Introduce a check to see if a group holds only 'sticky' clients and use
this check to decide if a group is virtually empty.  Rationale: if a
group contains *only* 'sticky' clients, it should be skipped while
cycling through groups.  Apply similar logic to the group menu.

Based on an idea from phessler@, who also tested another version.
2014-09-17 14:31:37 +00:00
okan
4b6dc96398 use similiar style for client flags 2014-09-15 13:00:49 +00:00
okan
26b95de019 Remove incorrect cast in kbfunc_exec. In kbfunc_ssh, reverse logic on
truncation check so it's obvious.
2014-09-11 16:06:26 +00:00
okan
d27fc99784 fold in 'active' into 'flags' 2014-09-10 20:30:38 +00:00
okan
20c1113fdd move the check for an empty queue up during cycle 2014-09-08 21:24:27 +00:00
okan
aac16013d2 name the group client queue appropriately, like other queues 2014-09-08 21:15:14 +00:00
okan
b64ce8558c more style nits and wrapping 2014-09-08 20:37:02 +00:00
okan
bc70374264 since mruq has been folded in, rename mru-named functions 2014-09-08 20:32:40 +00:00
okan
26ba152692 Remove duplicate client queue (mruq); instead, remove and take the
global Clientq and place it inside screen_ctx since every client belongs
to a screen, then use the same per screen clientq to track stacking
order (the sole reason for mruq).
2014-09-08 20:11:22 +00:00