use the vte_terminal_spawn_sync wrapper
The vte_ptr_set_term function is gone, so there's no reason to create the pty object manually.
This commit is contained in:
parent
be4e2faf73
commit
e63d868ed6
20
termite.cc
20
termite.cc
|
@ -1443,13 +1443,6 @@ int main(int argc, char **argv) {
|
|||
command_argv = default_argv;
|
||||
}
|
||||
|
||||
VtePty *pty = vte_terminal_pty_new_sync(vte, VTE_PTY_DEFAULT, NULL, &error);
|
||||
|
||||
if (!pty) {
|
||||
g_printerr("failed to create pty: %s\n", error->message);
|
||||
return EXIT_FAILURE;
|
||||
}
|
||||
|
||||
keybind_info info {
|
||||
GTK_WINDOW(window), vte,
|
||||
{gtk_entry_new(),
|
||||
|
@ -1471,8 +1464,6 @@ int main(int argc, char **argv) {
|
|||
};
|
||||
signal(SIGUSR1, [](int){ reload_config(); });
|
||||
|
||||
vte_terminal_set_pty(vte, pty);
|
||||
|
||||
GdkRGBA transparent {0, 0, 0, 0};
|
||||
|
||||
gtk_widget_override_background_color(hint_overlay, GTK_STATE_FLAG_NORMAL, &transparent);
|
||||
|
@ -1548,12 +1539,11 @@ int main(int argc, char **argv) {
|
|||
env = g_environ_setenv(env, "TERM", term, TRUE);
|
||||
env = g_environ_setenv(env, "VTE_VERSION", "3405", TRUE);
|
||||
|
||||
GPid ppid;
|
||||
if (g_spawn_async(nullptr, command_argv, env,
|
||||
(GSpawnFlags)(G_SPAWN_DO_NOT_REAP_CHILD | G_SPAWN_SEARCH_PATH),
|
||||
(GSpawnChildSetupFunc)vte_pty_child_setup, pty,
|
||||
&ppid, &error)) {
|
||||
vte_terminal_watch_child(vte, ppid);
|
||||
GPid child_pid;
|
||||
if (vte_terminal_spawn_sync(vte, VTE_PTY_DEFAULT, nullptr, command_argv, env,
|
||||
G_SPAWN_SEARCH_PATH, nullptr, nullptr, &child_pid, nullptr,
|
||||
&error)) {
|
||||
vte_terminal_watch_child(vte, child_pid);
|
||||
} else {
|
||||
g_printerr("the command failed to run: %s\n", error->message);
|
||||
return EXIT_FAILURE;
|
||||
|
|
Loading…
Reference in New Issue