X-Git-Url: https://git.pterodactylus.net/?p=show-time.git;a=blobdiff_plain;f=show-time.c;h=9f02fc08f2292206a029d8688869b90ef0b19cad;hp=4e4369f58eeb06db5c6e2a6bd02e76c8b2fd4097;hb=1c39e3971081ca80caa4d66c7309f9163370bfeb;hpb=85524745e24cdf1ea20ddc927855f6a120c30218 diff --git a/show-time.c b/show-time.c index 4e4369f..9f02fc0 100644 --- a/show-time.c +++ b/show-time.c @@ -18,7 +18,7 @@ int getColumns() { if (!error) { return terminalSize.ws_col; } - return 80; + return -1; } int main(int argc, char** argv) { @@ -26,6 +26,7 @@ int main(int argc, char** argv) { struct tm *localTime; time_t currentTime; char buffer[80]; + int terminalWidth; if (fork() != 0) { return 0; @@ -36,7 +37,11 @@ int main(int argc, char** argv) { localTime = localtime(¤tTime); strftime(buffer, 80, "%d.%m.%Y %H:%M:%S", localTime); printf("%c[s", 27); /* save cursor position */ - printf("%c[%d;%dH", 27, 1, (int) (getColumns() - strlen(buffer))); /* set cursor */ + terminalWidth = getColumns(); + if (terminalWidth == -1) { + return 0; + } + printf("%c[%d;%dH", 27, 1, (int) (terminalWidth - strlen(buffer))); /* set cursor */ printf("%s", buffer); printf("%c[u", 27); /* restore cursor position */ fflush(stdout);