Я пишу приложение на c ++, которое в определенный момент создает окно GTK3, а также выполняет код X11 в других местах.
Для чистой части X11 я использую XOpenDisplay()
, чтобы открыть дисплей.
Запуск части X11 и последующее открытие окна GTK работает нормально. Многократное выполнение части X11 также не является проблемой, поскольку я отпускаю дисплей там, используя XCloseDisplay
.
Проблема, с которой я сталкиваюсь, возникает, когда я пытаюсь запустить код X11 после инициализации gtk (если быть более точным, вызывая XOpenDisplay()
после инициализации gtk).
Я подозреваю, что после запуска gtk_init()
дисплей никогда не отключается, даже после gtk_main_quit()
.
Я не нашел ничего о деинициализации в документации gtk3. Можно ли как-нибудь пропустить деинициализацию gtk или освободить дисплей другим способом?