问题描述
崇高与从终端,打开一个Sublime Text窗口,但继续收到此消息:
(sublime: 6476): GLib-CRITICAL **; Source ID 1982 was not found when attempting to remove it.
源ID不断变化。使用Ubuntu 14.04。
有什么想法怎么回事?谢谢!
最佳回答
Ubuntu的错误跟踪器中的This page描述了这种特殊情况。显然,这是14.04的一个已知错误,可能是由于GLib的回归,或GLib与GTK之间的不匹配(所以其中一位评论者说)。
什么都没有试图删除Sublime,这只是编程库中的一个错误。如果没有任何东西让您崩溃或变得无法使用,请忽略它…
编辑此问题已在14.10及更高版本中修复。您可以升级您的发行版,或者直接升级glib
,错误应该消失了。升级到Sublime Text 3(无论如何强烈建议这样做)也可以解决此问题。
次佳回答
最终这太令人讨厌了,以至于无法忽略,所以我有一个很草率的解决方案。这是在nohup内部运行sublime的函数。最初,我只是尝试创建一个别名来使用nohup运行sublime,但是它将生成一个日志文件.output并将其保留在我正在使用的任何目录中。终端,然后将输出日志发送到/dev /null
现在我有了一个函数sblm
,我只需使用别名sublime
覆盖普通的sublime函数。
将所有这些粘贴到您的.bash_aliases
文件中。
#Function to deal with the annoying sublime errors
#Send annoying .output logs to /dev/null
function sblm
{
nohup sublime $1 >/dev/null 2>&1 &
}
#Call my sublime function
alias sublime="sblm"
第三种回答
我升级到Sublime 3,并且停止接收这些消息。希望它也对您有用。
[编辑]您可以按照此快速教程升级到高级文字3:Tutorial from WebUpd8
第四种回答
似乎ConsoleKit中存在double-free错误。
最近,这已在许多Gnome程序中出现,但是ConsoleKit用户受到的影响尤其严重,因为(以我的经验)每一次按键都会发出警告。消息的来源是Glib的g_source_remove()
,但这意味着调用方试图不当使用g_source_remove()
。 g_source_remove()
是resource-freeing函数,就像libc的free()
一样,因此最可能的原因是在同一对象上两次调用它。
从https://bugzilla.gnome.org/show_bug.cgi?id=721369#c7:
GLib recently started throwing a warning when g_source_remove() is passed garbage (as per warning). Your applications have probably been broken for a while, and there’s no telling what could actually have happened in the past when g_source_remove() would happily close any random source because the programmer got the wrong argument to g_source_remove().