Age | Commit message (Collapse) | Author |
|
|
|
* use strtol, and warn about overflow or invalid input.
|
|
|
|
* where it is used, only (small) positive numbers make sense.
* While here use strtol instead of manually parsing the string,
and be careful about validation. (Still) return -1 to indicate failure.
|
|
* this is consistent with cmd_select and read_window. If one has a
keybinding for "gselect 0" and then happens to have a group named "0",
"gselect 0" should keep the same behavior: lead to group numbered 0.
Discussed with |cos| who proposed the recent "search groups for exact name
match first".
|
|
* Contrary to the recent find_group change, windows are still searched
by number first. This is inconsistent and a choice has to be made.
|
|
* instead of feeding stdio a NULL string and invoking undefined
behavior, return a failure
|
|
* detects erroneous inputs such as "titlefoo" instead of "title"
|
|
* "deffoo"-style names are only compat aliases these days.
|
|
* there are really two operation modes that could even be put into separate
functions. So disentangle the logic and put the operation mode check
outside of the loop parsing the groups list.
|
|
* The previous name didn't make sense since it was also used for group
numbers.
* This function should probably make more checks or be deleted.
|
|
|
|
|
|
When having two groups where the second one's name partially matches the name
of the first one, it is hard to gselect the second one. Similarly it is not
possible to select groups with fully numerical names.
e.g.
If having the group list:
0-default
1*other
2-de
3-0
The user expactation when typing ":gselect de" or ":gselect 0" would likely be
to select group number 2 & group number 3 respectively.
This commit modifies the behaviour of gselect, to primarily select the group
with an exactly matching name if possible, before trying numerical or partial
matches.
|
|
* As with setpgid, only do this if setsid fails or is absent.
|
|
|
|
|
|
* No attempt to detect pwd.h / getpwuid, not sure if needed.
|
|
* Avoids leaking a descriptor, and potential problems described in the
comp.windows.x FAQ.
|
|
* Since it's easier to get a fd from a FILE * rather than the other way
around.
|
|
* Purpose not understood, usage can't be right on OSes where getsid
fails with EPERM if ratpoison and the argument pid are not in the
session; guess what, ratpoison calls setsid(2) in spawn()...
|
|
|
|
|
|
|
|
* Use XkbKeycodeToKeysym instead. Not sure if this is a good change,
but publish it at least so that people can test and report.
|
|
|
|
* Fixes build with pcc.
|
|
* groff interprets "%T" even when double-quoted. Use \&%T instead.
|
|
* The former manpage needed Groff to be properly formatted, this is a
dependancy I want to remove. Support for systems where neither groff
nor mandoc are available is achieved by generating a man(7) manpage,
which will be shipped in the tarballs.
* The mdoc(7) language provides semantic annotations for better
documentation of Unix utilities, contrary to man(7) which provides
mere presentation markup.
* The build system now encodes paths in the manpage according to the
settings passed to ./configure.
Note that some markup used may not be perfectly appropriate. Comments
about this matter, and questions from distro maintainers using manpage
patches are welcome.
Selected reading:
- http://mdocml.bsd.lv general information about mdoc(7)
- http://mdocml.bsd.lv/mdoc.7.html mdoc(7) macros reference
- http://manpages.bsd.lv/ mdoc(7) tutorial
|
|
|
|
|
|
|
|
|
|
|
|
|
|
* Wrong usage of pointers. Those two helper functions are supposed to
update frame parameters passed as pointers, but this does not work.
Assigning to a pointer merely changes its local value.
* Additionally, forgotten assignment to "done" in
find_non_dedicated_frame(), bug not visible in non-xinerama setups.
|
|
|
|
* selection has static storage and is thus correctly initialized.
|
|
|
|
* don't use xmalloc/xrealloc, but return -1 in case of memory allocation
failure
* modify the parameters only when allocation succeeds
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
* If we fail with errno set to something != ENOENT then an error message
should probably be printed.
|