Sublime & 从终端打开一个 Sublime Text 窗口,但不断收到此消息:
(sublime: 6476): GLib-CRITICAL **; Source ID 1982 was not found when attempting to remove it.
源 ID 不断变化。使用 Ubuntu 14.04。
任何想法可能会发生什么?谢谢!
Sublime & 从终端打开一个 Sublime Text 窗口,但不断收到此消息:
(sublime: 6476): GLib-CRITICAL **; Source ID 1982 was not found when attempting to remove it.
源 ID 不断变化。使用 Ubuntu 14.04。
任何想法可能会发生什么?谢谢!
Ubuntu 的错误跟踪器中的这个页面描述了这种特殊情况。显然这是 14.04 的一个已知错误,可能是因为 GLib 的回归,或者 GLib 和 GTK 之间的不匹配(其中一位评论者说)。
没有任何东西试图删除 Sublime,这只是编程库中的一个错误。如果没有什么东西在你身上崩溃,或者变得无法使用,那就忽略它......
编辑
此问题已在 14.10 及更高版本中修复。您可以升级您的发行版,或者只是升级glib
并且错误应该消失。升级到Sublime Text 3(无论如何都强烈推荐)也可以解决这个问题。
这最终太烦人了,无法忽略,所以我有一个非常草率的解决方案。这是一个在 nohup 中运行 sublime 的函数。起初,我尝试创建一个别名来使用 nohup 运行 sublime,但它会生成一个日志文件.output
并将其保留在我正在工作的任何目录中。为了解决这个问题,该函数sblm
在 nohup 中运行 sublime,它隐藏了来自终端的错误,然后将输出日志发送到 /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,我停止接收这些消息。希望它也适合你。
[编辑]您可以按照此快速教程升级到 sublime text 3:WebUpd8 教程
看起来 ConsoleKit 中存在双重释放错误。
最近在很多 Gnome 程序中都出现了这种情况,但 ConsoleKit 用户受到的影响尤其严重,因为(根据我的经验)每次按键都会发出警告。消息的来源是 Glib 的g_source_remove()
,但它的意思是调用者试图使用g_source_remove()
不当。 g_source_remove()
是一个资源释放函数,很像 libc 的free()
,所以最可能的原因是在同一个对象上调用它两次。
来自https://bugzilla.gnome.org/show_bug.cgi?id=721369#c7:
GLib 最近开始在 g_source_remove() 传递垃圾时发出警告(根据警告)。您的应用程序可能已经被破坏了一段时间,并且不知道过去当 g_source_remove() 会愉快地关闭任何随机源时实际发生了什么,因为程序员得到了 g_source_remove() 的错误参数。