for empty keymaps which could result in crashes
(Kuang-che Wu).
- new option: -embed (frills). somebody could write a simple
- tk script to make a tabbable terminal now.
+ tk script to make a tab'able terminal now...
- only warn on X errors, *try* to continue (frills).
- add COPYING back, which got lost somehow.
- after deciding that LSM is dead, remove all traces of it,
along with other, similar, cleanups.
- _try_ to react sensibly to some non-monotonic time changes.
- don't crash in urxvtc when getcwd fails (reported by Paco-Paco).
- - tweak font searching algorithm a bit to get faster and be
- more compatible with the font older rxvt-unicode versions chose
- (reported by Paco-Paco).
+ - tweak font searching algorithm a bit to be faster and more
+ compatible with older rxvt-unicode versions when multiple fonts
+ match (reported by Paco-Paco).
- urxvtd tries to stay in "/" whenever possible.
5.0 Fri Feb 11 18:31:48 CET 2005
main (int argc, const char *const *argv)
{
client c;
- char buf[PATH_MAX];
-
{
sigset_t ss;
}
c.send ("NEW");
+
// instead of getcwd we could opendir (".") and pass the fd for fchdir *g*
- c.send ("CWD"), c.send (getcwd (buf, sizeof (buf)));
+ char cwd[PATH_MAX];
+
+ if (!getcwd (cwd, sizeof (cwd)))
+ {
+ perror ("unable to determine current working directory");
+ exit (EXIT_FAILURE);
+ }
+
+ c.send ("CWD"), c.send (cwd);
for (char **var = environ; *environ; environ++)
c.send ("ENV"), c.send (*environ);
term->log_hook = 0;
environ = old_environ;
+ chdir ("/");
if (!success)
term->destroy ();
{
rxvt_init ();
+ chdir ("/");
+
char *sockname = rxvt_connection::unix_sockname ();
unix_listener l (sockname);
printf ("rxvt-unicode daemon listening on %s.\n", sockname);
if (replace_field (fname, list[i], 6, '0', field_str))
diff += 10; // slightly penalize scalable fonts
+ else if (replace_field (fname, list[i], 11, '0', "0"))
+ diff += 300; // more heavily penalize what looks like scaled bitmap fotns
if (!set_properties (p, fname))
continue;
font_weight *best = fonts + count - 1;
for (font_weight *w = best; w-- > fonts; )
- if (w->diff < best->diff)
+ if (w->diff <= best->diff)
best = w;
if (!best->name
FcValue v;
if (prop.height != rxvt_fontprop::unset
- || (FcPatternGet (p, FC_PIXEL_SIZE, 0, &v) != FcResultMatch
+ && (FcPatternGet (p, FC_PIXEL_SIZE, 0, &v) != FcResultMatch
&& FcPatternGet (p, FC_SIZE, 0, &v) != FcResultMatch))
FcPatternAddInteger (p, FC_PIXEL_SIZE, prop.height);