aboutsummaryrefslogtreecommitdiffstats
path: root/libsdl/libsdl-qpe-1.2.7/pygame.patch
diff options
context:
space:
mode:
Diffstat (limited to 'libsdl/libsdl-qpe-1.2.7/pygame.patch')
-rw-r--r--libsdl/libsdl-qpe-1.2.7/pygame.patch42
1 files changed, 42 insertions, 0 deletions
diff --git a/libsdl/libsdl-qpe-1.2.7/pygame.patch b/libsdl/libsdl-qpe-1.2.7/pygame.patch
index e69de29bb2..f13a945ee2 100644
--- a/libsdl/libsdl-qpe-1.2.7/pygame.patch
+++ b/libsdl/libsdl-qpe-1.2.7/pygame.patch
@@ -0,0 +1,42 @@
+--- SDL-1.2.7/src/main/qtopia/SDL_qtopia_main.cc~pygame.patch 2003-12-14 16:55:53.000000000 +1030
++++ SDL-1.2.7/src/main/qtopia/SDL_qtopia_main.cc 2004-05-11 01:20:46.000000000 +0930
+@@ -16,7 +16,7 @@
+ // some issues in Qtopia where there are left-over qcop files in /tmp/.
+ // I'm guessing this will also clean up the taskbar in the Sharp version
+ // of Qtopia.
+-static inline void cleanupQCop() {
++static void cleanupQCop() {
+ QString appname(qApp->argv()[0]);
+ int slash = appname.findRev("/");
+ if(slash != -1) { appname = appname.mid(slash+1); }
+@@ -27,19 +27,25 @@
+ }
+
+ static QPEApplication *app;
++
++extern "C" void initQCop(int argc, char *argv[]) {
++
++ app = new QPEApplication(argc, argv);
++ QWidget dummy;
++ app->showMainWidget(&dummy);
++ atexit(cleanupQCop);
++}
++
+ #endif
+
+ extern int SDL_main(int argc, char *argv[]);
+
+-int main(int argc, char *argv[])
++extern "C" int main(int argc, char *argv[])
+ {
+ #ifdef QWS
+ // This initializes the Qtopia application. It needs to be done here
+ // because it parses command line options.
+- app = new QPEApplication(argc, argv);
+- QWidget dummy;
+- app->showMainWidget(&dummy);
+- atexit(cleanupQCop);
++ initQCop(argc, argv);
+ #endif
+ // Exit here because if return is used, the application
+ // doesn't seem to quit correctly.