为什么我的程序如果不适合显示就会崩溃?

为什么我的程序如果不适合显示就会崩溃?

我曾经使用 SDK 为我的 E-ink PocketBook 编写程序http://pbsdk.vlasovsoft.net/在 32 位 Ubuntu 12.04 上,运行良好。最近我换到了 64 位 14.04。

我使用gcc编译-m32模拟器的选项,这就是这个问题的目的。我花了一整天的时间与ld编译器斗争并让它工作。最后,我的程序似乎编译通过了,但是当我运行它们时,它们就崩溃了segmentation fault (core dumped)。后来我发现程序在任何屏幕绘制功能上都会崩溃。模拟器会创建一个尺寸为 600x800 的窗口,而我的笔记本电脑显示器使用 1366x768。在 Ubuntu 12.04 上没有问题,但这里似乎有一个问题。如果我告诉模拟器将窗口旋转 90 度,它不会崩溃。我连接了另一个尺寸为 1600x1200 的显示器,它没有崩溃。我该怎么办?

Xfce 让一切都运行良好。

如果您注释FullUpdate()行它就不会崩溃。


#include "inkview.h"

int main_handler(int type, int par1, int par2)
{
    ClearScreen(); //Doesn't draw to screen, only buffer
    FullUpdate(); //Draws to screen
    return 0;
}

int main(int argc, char **argv)
{
    InkViewMain(main_handler);
    return 0;
}

输出:


Gtk-Message: Failed to load module "overlay-scrollbar"
GLib-GIO-Message: Using the 'memory' GSettings backend.  Your settings will not be saved or shared with other applications.
** Message: Command 501 selected

Segmentation fault (core dumped)

也许这与某事有关overlay-scrollbar

相关内容