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:
@@ -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;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user