Summary: | 1.4.6: still hangs on g_spawn_command_line_sync | ||
---|---|---|---|
Product: | [Plasma] Oxygen | Reporter: | Arkadiusz Miskiewicz <arekm> |
Component: | gtk2-engine | Assignee: | Hugo Pereira Da Costa <hugo.pereira.da.costa> |
Status: | REPORTED --- | ||
Severity: | normal | CC: | b7.10110111, web |
Priority: | NOR | ||
Version: | unspecified | ||
Target Milestone: | --- | ||
Platform: | Other | ||
OS: | Linux | ||
Latest Commit: | Version Fixed In: |
Description
Arkadiusz Miskiewicz
2015-09-19 09:49:28 UTC
Also from https://bugzilla.gnome.org/show_bug.cgi?id=738620 "g_spawn_* functions call internally fork_exec_with_pipes(), which calls do_exec(). In these functions, there are called functions which are not async-signal-safe, like readdir, dirfd, and probably others (I apology for not providing a complete callstack, but I reproduced a bug once and without full debug info)." so doesn't seem to be sane to use g_spawn_* functions for oxygen like stuff. 2 weeks of using oxygen with patch below reverted and no single lockup. So g_spawn_command_line_sync is still source of problems. commit 2068101234271725def6fe91de4a26543b260cba Author: Hugo Pereira Da Costa <hugo@oxygen-icons.org> Date: Wed Jun 19 14:17:53 2013 +0200 Re-added use of g_spawn_command_line_sync in place of popen, to execute an external comment. This effectively reverts commit 51b662b0cd86fd7a960cc2f0c436441d64b2dd44 Rational: - the failure of g_spawn_command_line_sync was a glib bug 3.6.0, that got fixed since then (3.6.2) - the use of popen generates unnecessary console when compiled for windows - the use of popen makes it difficult to redirect stderr, which results in error messages being printed on screen when the executed command failed (for instance because the relevant application is not installed. CCBUG: 318891 Thank you for the bug report. As this report hasn't seen any changes in 5 years or more, we ask if you can please confirm that the issue still persists. If this bug is no longer persisting or relevant please change the status to resolved. |