summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2013-04-10main: in case XOpenDisplay fails, use exit not returnJérémie Courrèges-Anglas
* this is consistent with surrounding code, and helps code analyzers not to barf about possible memory leaks
2013-04-10strtok_ws: account for erroneous usageJérémie Courrèges-Anglas
* if s and last are both NULL then we'll get a fatal error; instead of waiting for the segfault, display an error message and call abort()
2013-04-10main: free display and alt_rcfileJérémie Courrèges-Anglas
* otherwise specifying -d or -f more than once would lead to a memory leak
2013-04-10history_add: make 2nd parameter constJérémie Courrèges-Anglas
2013-04-10Get rid of several unused variablesJérémie Courrèges-Anglas
* cmd_definekey: actually use cmd * cmd_meta: remove ev1 * cmd_resize: remove nbytes * cmd_ratrelwarp: remove s * draw_string: remove lgv, lgc, mask; lgc wasn't XFreeGC'ed * get_more_input: remove nbytes * cleanup_frame: remove last_win * get_window_list: remove other_window Patch from Bernhard R. Link
2013-04-10Refactor cmd_promptJérémie Courrèges-Anglas
* use a local variable instead of using ARG_STRING(0) ten times * minimize scope of local variables * use a struct sbuf instead of playing with xmalloc and strncpy * correct indentation
2013-04-10Refactor cmd_timeJérémie Courrèges-Anglas
* instead of playing with xmalloc, strlen and strncpy, use xstrdup to do the copying and strcspn to delete the newline
2013-04-10cmd_prompt: handle NULL outputJérémie Courrèges-Anglas
* if the user aborted we receive a NULL pointer; don't attempt to dereference it, and treat this case as a failure. Matches the behaviour of cmd_colon and cmd_select
2013-04-07oops, actually bump to 1.4.7-betaJérémie Courrèges-Anglas
2013-04-07Make git ignore .xz archives and HTML documentationJérémie Courrèges-Anglas
2013-04-07Bump to 1.4.7-betaJérémie Courrèges-Anglas
2013-04-07Here comes ratpoison 1.4.6v1.4.6Jérémie Courrèges-Anglas
Thanks a lot to Shawn Betts, Bernhard R. Link and all of you folks who provided advices, bugreports and feedback. Long live ratpoison! Death to the rodent!
2013-04-07More ChangeLog and NEWS entries for upcoming releaseJérémie Courrèges-Anglas
2013-04-07In strtok_ws() use "last", not "pointer" for the static variableJérémie Courrèges-Anglas
* since X11/Xdefs.h may define it too. Found by -Wshadow. Bonus: "last" carries more meaning.
2013-04-07Don't use a flexible array member in struct history_itemJérémie Courrèges-Anglas
* They are a c99 feature, which makes it impossible to build ratpoison on some platforms. GCC supports zero-sized arrays, more conservative approaches say to use foo[1], but as brlink says a compiler with aggressive optimization turned on might play nasty tricks. Just use a traditional struct.
2013-04-01bump to 1.4.6-rc1Jérémie Courrèges-Anglas
* add NEWS and ChangeLog bits
2013-04-01a .dir-locals.el file for contributors using EmacsJérémie Courrèges-Anglas
2013-02-22receive_command_result() fixupJérémie Courrèges-Anglas
* forgot a break statement when moving things around * braino in comment: '1' is RET_SUCCESS, '0' is RET_FAILURE
2013-02-22fixup return values of several commandsJérémie Courrèges-Anglas
* in cmd_select(), consistently set the return value for all cases we deal with * in cmd_unmanage(), don't attempt to use a NULL pointer if the unmanaged windows list is empty; just report success * in cmd_kill, only report failure if XKillClient() actually failed * in command(), remove a useless test: cmd can't be NULL * in cmd_gravity, don't call current_window() twice
2013-02-22make ratpoison -c provide a useful exit statusJérémie Courrèges-Anglas
* properly define the way the wm may give feedback to ratpoison -c; see communications.c:receive_command_result() * follow this protocol in events.c:receive_command() * modify receive_command_result() to return an int (which is the mirror of the struct cmdret "success" member used on the wm side) * pass that error status back to main.c; exit with an error status if any of the commands we sent failed
2013-02-18silence minor compilation warning in src/manage.cJérémie Courrèges-Anglas
2013-02-18more correct cmd_help()Jérémie Courrèges-Anglas
* only print the "Command key: ..." bits if we're dealing with the root kmap * don't read (and print) uninitialized data (foomap->actions[foomap->actions_last] shouldn't be accessed) It seems like keymap actions and other things like aliases use arrays because they were implemented before linkedlist.[ch] were introduced. Perhaps should we just switch them to more fool-proof linked lists?
2013-02-13move xa_string initialisation before first useBernhard R. Link
otherwise ratpoison -c no longer works
2013-02-12readd AM_MAINTAINER_MODE, but enable maintainer mode by defaultBernhard R. Link
Using AM_MAINTAINER_MODE([enable]) means you get the maintainer-specific parts enabled by default like without AM_MAINTAINER_MODE, while people still can do --disable-maintainer-mode to avoid any pitfalls.
2013-02-11get rid of AM_MAINTAINER_MODEJérémie Courrèges-Anglas
* this one has bitten me too many times as an end user ; here it annoys me as a maintainer - version.texi not being installed. bye bye. See info "(automake) maintainer-mode".
2013-02-11update Shawn's email address in documentationJérémie Courrèges-Anglas
* while here, s/EMACS/Emacs/ in the Info manual
2013-02-10texinfo manual updateJérémie Courrèges-Anglas
* fdl.texi: update to a newer version (not to a newer licence version!) * ratpoison.texi: update to build printed manuals, get rid of annoying @node references, and move GFDL to the last section. use automake support for version.texi, so that manuals don't ship with an outdated version * .gitignore: match update
2013-02-08add myself (as current maintainer) to AUTHORSJérémie Courrèges-Anglas
2013-02-08update FAQ urlJérémie Courrèges-Anglas
2013-02-07remove ratpoison.specJérémie Courrèges-Anglas
* this file is outdated and doesn't help rpm distros packagers / users, so let's just delete it Discussed with Kevin Fenzi (Fedora ratpoison maintainer)
2013-02-07mv configure.in configure.acJérémie Courrèges-Anglas
* rename this file since new versions of automake complain about the old name
2013-02-06rp_text_width: remove "font" argumentJérémie Courrèges-Anglas
* (globals.[ch]): remove rp_text_width "font" arg, since its value is always the global variable defaults.font (non-Xft case). remove one #ifdef while here * update rp_text_width() calls to match new signature
2013-02-06use utf8-handling Xft functions if we are in an UTF-8 localeJérémie Courrèges-Anglas
* (manage.c) in get_wmname(), try to get the (UTF-8 encoded) _NET_WM_NAME property. Fallback to GetWMName() if unavailable. Add some debugging bits to see which TEXT encoding clients use for WM_NAME. * (globals.c) use Xft*Utf8 functions to compute text width and draw strings. No regressions with or without Xft, UTF-8 locale or not. * assume we can use Xft*Utf8 functions whenever we have Xft, to reduce the #ifdef dance Original patch from Bernhard R. Link
2013-02-06make TEXT atoms global variablesJérémie Courrèges-Anglas
* (events.c) extract xa_compound_text from selection_request(), make it a global * introduce xa_string (same as XA_STRING) and rename utf8_string to xa_utf8_string, for consistency
2013-02-06introduce defaults.utf8_localeJérémie Courrèges-Anglas
* use nl_langinfo() to detect if locale codeset is UTF-8
2013-01-21autotools: introduce AM_LANGINFO_CODESETJérémie Courrèges-Anglas
* (m4/codeset.m4) new file (from the gettext package) * (configure.in) use AM_LANGINFO_CODESET * (.gitignore) don't ignore m4/codeset.m4
2013-01-21configure.in: get rid of AC_TYPE_SIGNALJérémie Courrèges-Anglas
it has been unused so far, and afaik we don't support pre-ansi platforms...
2013-01-21configure.in: compiler handlingJérémie Courrèges-Anglas
* no need to explicitely check for gcc, it will be picked up if available * prepend to CFLAGS instead of appending * no need to add -O2 if gcc, autoconf automatically does that when appropriate
2013-01-21configure.in: rename obsolete macrosJérémie Courrèges-Anglas
* s/AM_CONFIG_HEADER/AC_CONFIG_HEADER * s/AC_HELP_STRING/AS_HELP_STRING
2013-01-21Makefile.am: strip unused stuffJérémie Courrèges-Anglas
* PACKAGE and VERSION are already AC_SUBST'ed * targets bin-dist and strip-bin-dist don't exist
2013-01-21more up-to-date autotools practicesJérémie Courrèges-Anglas
* use proper AC_INIT / AM_INIT_AUTOMAKE arguments * install macros in m4/ * install junk build files in build-aux/ * replace hand-rolled autogen.sh by autoreconf -i * sync .gitignore
2013-01-20basic contrib/ cleanupJérémie Courrèges-Anglas
* (*.pl, rpws) don't hardcode path to Perl but rely on /usr/bin/env * (allwindows.sh) don't require bash * (rpshowall.sh) properly handle arguments, use portable shell arithmetic * (*.sh) use more quotes * (*.pl, split.sh) use 'ratpoison' if RATPOISON isn't in the environment (and don't error out)
2013-01-20tmpwm fix: SIG_IGN -> SIG_DFLJérémie Courrèges-Anglas
for waitpid(SIGCHLD, SIG_IGN) behaves wildly differently across OSes. Fixes tmpwm hanging after child wm exits on OpenBSD.
2012-12-26environment handling fixesJérémie Courrèges-Anglas
* AC_CHECK_FUNCS: +setenv +unsetenv -putenv (the check for putenv() wasn't used anyway) * prefer setenv() to putenv() in cmd_setenv() * prefer unsetenv() to putenv() in cmd_unsetenv() - putenv("FOO") isn't legit everywhere - putenv("FOO=") will only work on MinGW * make the getenv command return an empty output if the variable wasn't found * while here, split and sort AC_CHECK_FUNCS |cos| on #ratpoison reported that environment variables weren't properly removed, and proposed a different fix. thanks!
2012-08-10contrib/genrpbindings: removing the space between method name and the ↵Vincent Batts
parenthesis Ruby syntax got more restrictive, so spaces are no longer allowed there.
2012-07-01cmd_info: also display a window not in the current groupBernhard R. Link
Without this change, cmd_info displays "No Window" if called with the current window not in the current group (for example directly after a gselect). This change makes it also look in other groups. In that case it might show a number not the one to switch back to it without switching the group first, but I guess that is less confusing than just claiming there is no window.
2011-05-25remove mention of non-existant keybinding for quit from manpageBernhard R. Link
2011-05-10Fix display_string construction to handle new XDisplayString() behaviouranthony
XDisplayString does not append ".screen number" to return value after http://gitorious.org/omcfadde/libx11/commit/f92e754297ec5fdb81068b56a4435026666224fa Fix by appending .screen_num to the end of s->display_string in such case
2010-12-23don't follow a pointer that might be NULL (HIDE_MOUSE specific)Bernhard R. Link
In events.c's key_press, the screen the local pointer variable s points to is accessed if HIDE_MOUSE is defined when hiding the cursor. Directly after that there is a "if (!s) return;", which is obviously too late. By default HIDE_MOUSE is not defined in src/conf.h, so this is not a problem unless this feature was enabled at compile time. Found by cppcheck.
2010-08-21document nextscreen and prevscreen default keybindings in the manpageBernhard R. Link