mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-12-22 08:17:01 +00:00
docs: Do not pass the json through stdout
Unicode encoding breaks on windows when doing so
This commit is contained in:
parent
e31f06f7f9
commit
56d01406bc
2 changed files with 20 additions and 9 deletions
|
@ -690,8 +690,9 @@ main (int argc, char *argv[])
|
||||||
GList *features, *tmp;
|
GList *features, *tmp;
|
||||||
gint i;
|
gint i;
|
||||||
gboolean first = TRUE;
|
gboolean first = TRUE;
|
||||||
|
GError *err = NULL;
|
||||||
|
|
||||||
g_assert (argc >= 2);
|
g_assert (argc >= 3);
|
||||||
|
|
||||||
setlocale (LC_ALL, "");
|
setlocale (LC_ALL, "");
|
||||||
setlocale (LC_NUMERIC, "C");
|
setlocale (LC_NUMERIC, "C");
|
||||||
|
@ -706,7 +707,7 @@ main (int argc, char *argv[])
|
||||||
gst_init (NULL, NULL);
|
gst_init (NULL, NULL);
|
||||||
|
|
||||||
json = g_string_new ("{");
|
json = g_string_new ("{");
|
||||||
for (i = 1; i < argc; i++) {
|
for (i = 2; i < argc; i++) {
|
||||||
gchar *basename;
|
gchar *basename;
|
||||||
libfile = argv[i];
|
libfile = argv[i];
|
||||||
plugin = gst_plugin_load_file (libfile, &error);
|
plugin = gst_plugin_load_file (libfile, &error);
|
||||||
|
@ -757,7 +758,13 @@ main (int argc, char *argv[])
|
||||||
}
|
}
|
||||||
|
|
||||||
g_string_append_c (json, '}');
|
g_string_append_c (json, '}');
|
||||||
g_print ("%s", json->str);
|
if (!g_file_set_contents (argv[1], json->str, -1, &err)) {
|
||||||
|
g_printerr ("Could not set json to %s: %s", argv[1], err->message);
|
||||||
|
g_clear_error (&err);
|
||||||
|
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
g_string_free (json, TRUE);
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
|
@ -21,6 +21,7 @@ import json
|
||||||
import os
|
import os
|
||||||
import sys
|
import sys
|
||||||
import subprocess
|
import subprocess
|
||||||
|
import tempfile
|
||||||
|
|
||||||
from collections import OrderedDict
|
from collections import OrderedDict
|
||||||
try:
|
try:
|
||||||
|
@ -84,7 +85,8 @@ if __name__ == "__main__":
|
||||||
except FileNotFoundError:
|
except FileNotFoundError:
|
||||||
pass
|
pass
|
||||||
|
|
||||||
cmd = [os.path.join(os.path.dirname(os.path.realpath(__file__)), 'gst-hotdoc-plugins-scanner')]
|
out = output_filename + '.tmp'
|
||||||
|
cmd = [os.path.join(os.path.dirname(os.path.realpath(__file__)), 'gst-hotdoc-plugins-scanner'), out]
|
||||||
gst_plugins_paths = []
|
gst_plugins_paths = []
|
||||||
for plugin_path in sys.argv[3:]:
|
for plugin_path in sys.argv[3:]:
|
||||||
cmd.append(plugin_path)
|
cmd.append(plugin_path)
|
||||||
|
@ -110,10 +112,12 @@ if __name__ == "__main__":
|
||||||
with open(stderrlogfile, 'r') as f:
|
with open(stderrlogfile, 'r') as f:
|
||||||
print(f.read(), file=sys.stderr)
|
print(f.read(), file=sys.stderr)
|
||||||
raise
|
raise
|
||||||
|
|
||||||
|
with open(out, 'r') as jfile:
|
||||||
try:
|
try:
|
||||||
plugins = json.loads(data.decode(), object_pairs_hook=OrderedDict)
|
plugins = json.load(jfile, object_pairs_hook=OrderedDict)
|
||||||
except json.decoder.JSONDecodeError:
|
except json.decoder.JSONDecodeError:
|
||||||
print("Could not decode:\n%s" % data.decode(), file=sys.stderr)
|
print("Could not decode:\n%s" % jfile.read(), file=sys.stderr)
|
||||||
raise
|
raise
|
||||||
|
|
||||||
modified = dict_recursive_update(cache, plugins)
|
modified = dict_recursive_update(cache, plugins)
|
||||||
|
|
Loading…
Reference in a new issue