mirror of
https://github.com/morgan9e/systemd
synced 2026-04-14 08:25:20 +09:00
Revert "core/mount: replace invalid UTF-8 code points in "what" and "options""
This reverts commit aaf7b0e411.
Not only /proc/mountinfo, .mount units not started yet may contain
invalid UTF-8 chars.
This commit is contained in:
@@ -34,7 +34,6 @@
|
||||
#include "strv.h"
|
||||
#include "unit-name.h"
|
||||
#include "unit.h"
|
||||
#include "utf8.h"
|
||||
|
||||
#define RETRY_UMOUNT_MAX 32
|
||||
|
||||
@@ -275,35 +274,13 @@ static int update_parameters_proc_self_mountinfo(
|
||||
|
||||
p = &m->parameters_proc_self_mountinfo;
|
||||
|
||||
if (what && !utf8_is_valid(what)) {
|
||||
_cleanup_free_ char *what_escaped = NULL;
|
||||
r = free_and_strdup(&p->what, what);
|
||||
if (r < 0)
|
||||
return r;
|
||||
|
||||
what_escaped = utf8_escape_invalid(what);
|
||||
if (!what_escaped)
|
||||
return -ENOMEM;
|
||||
|
||||
r = !streq_ptr(p->what, what_escaped);
|
||||
free_and_replace(p->what, what_escaped);
|
||||
} else {
|
||||
r = free_and_strdup(&p->what, what);
|
||||
if (r < 0)
|
||||
return r;
|
||||
}
|
||||
|
||||
if (options && !utf8_is_valid(options)) {
|
||||
_cleanup_free_ char *options_escaped = NULL;
|
||||
|
||||
options_escaped = utf8_escape_invalid(options);
|
||||
if (!options_escaped)
|
||||
return -ENOMEM;
|
||||
|
||||
q = !streq_ptr(p->options, options_escaped);
|
||||
free_and_replace(p->options, options_escaped);
|
||||
} else {
|
||||
q = free_and_strdup(&p->options, options);
|
||||
if (q < 0)
|
||||
return q;
|
||||
}
|
||||
q = free_and_strdup(&p->options, options);
|
||||
if (q < 0)
|
||||
return q;
|
||||
|
||||
w = free_and_strdup(&p->fstype, fstype);
|
||||
if (w < 0)
|
||||
|
||||
Reference in New Issue
Block a user