tree-wide: use path_startswith() rather than startswith() where ever that's appropriate

When checking path prefixes we really should use the right APIs, just in
case people add multiple slashes to their paths...
This commit is contained in:
Lennart Poettering
2017-08-09 19:03:39 +02:00
parent a119ec7c82
commit 27458ed629
7 changed files with 24 additions and 13 deletions
+7 -3
View File
@@ -55,6 +55,7 @@
#include "terminal-util.h"
#include "time-util.h"
#include "util.h"
#include "path-util.h"
static volatile unsigned cached_columns = 0;
static volatile unsigned cached_lines = 0;
@@ -556,6 +557,7 @@ int terminal_vhangup(const char *name) {
int vt_disallocate(const char *name) {
_cleanup_close_ int fd = -1;
const char *e, *n;
unsigned u;
int r;
@@ -563,7 +565,8 @@ int vt_disallocate(const char *name) {
* (i.e. because it is the active one), at least clear it
* entirely (including the scrollback buffer) */
if (!startswith(name, "/dev/"))
e = path_startswith(name, "/dev/");
if (!e)
return -EINVAL;
if (!tty_is_vc(name)) {
@@ -582,10 +585,11 @@ int vt_disallocate(const char *name) {
return 0;
}
if (!startswith(name, "/dev/tty"))
n = startswith(e, "tty");
if (!n)
return -EINVAL;
r = safe_atou(name+8, &u);
r = safe_atou(n, &u);
if (r < 0)
return r;