/* See LICENSE for license details. */
#include <errno.h>
+#include <math.h>
#include <limits.h>
#include <locale.h>
#include <signal.h>
{
Atom clipboard;
- if (xsel.clipboard != NULL)
- free(xsel.clipboard);
+ free(xsel.clipboard);
+ xsel.clipboard = NULL;
if (xsel.primary != NULL) {
xsel.clipboard = xstrdup(xsel.primary);
void
setsel(char *str, Time t)
{
+ if (!str)
+ return;
+
free(xsel.primary);
xsel.primary = str;
{
FcPattern *pattern;
double fontval;
- float ceilf(float);
if (fontstr[0] == '-') {
pattern = XftXlfdParse(fontstr, False, False);
xsettitle(char *p)
{
XTextProperty prop;
- DEFAULT(p, "st");
+ DEFAULT(p, opt_title);
Xutf8TextListToTextProperty(xw.dpy, &p, 1, XUTF8StringStyle,
&prop);
} ARGEND;
run:
- if (argc > 0) {
- /* eat all remaining arguments */
+ if (argc > 0) /* eat all remaining arguments */
opt_cmd = argv;
- if (!opt_title && !opt_line)
- opt_title = basename(xstrdup(argv[0]));
- }
+
+ if (!opt_title)
+ opt_title = (opt_line || !opt_cmd) ? "st" : opt_cmd[0];
+
setlocale(LC_CTYPE, "");
XSetLocaleModifiers("");
cols = MAX(cols, 1);