------------------------------------------------------------------------
r1471 | eudoxos | 2008-08-16 23:25:23 +0200 (sob, 16 sie 2008) | 4 lines
Changed paths:
   M /trunk/core/yade.cpp
   M /trunk/gui/py/PythonUI.cpp

1. Fix GUI "crash" when trying to run python console without terminal (running 
by clicking an icon, for example): if no $TERM, run non-interactively
2. Select QtGUI over PythonUI if no $TERM set


------------------------------------------------------------------------
Index: gui/py/PythonUI.cpp
===================================================================
--- gui/py/PythonUI.cpp (revision 1470)
+++ gui/py/PythonUI.cpp (revision 1471)
@@ -70,7 +70,8 @@
         * Hence we remap ^C (keycode in c_cc[VINTR]) to killing the line 
(c_cc[VKILL]) and disable VINTR afterwards.
         * The behavior is restored back by the PythonUI::termRestore 
registered with atexit.
         * */
-       termSetup();
+       if(getenv("TERM")) termSetup();
+       else nonInteractive=true;
 
        LOG_DEBUG("PythonUI::pythonSession");
        PyGILState_STATE pyState = PyGILState_Ensure();
Index: core/yade.cpp
===================================================================
--- core/yade.cpp       (revision 1470)
+++ core/yade.cpp       (revision 1471)
@@ -240,6 +240,7 @@
        }
 
        if(gui.size()==0) gui=Omega::instance().preferences->defaultGUILibName;
+       if(gui=="PythonUI" && !getenv("TERM")){ LOG_WARN("No $TERM, using QtGUI 
instead of PythonUI"); gui="QtGUI"; }
        if(gui=="QtGUI" && !getenv("DISPLAY")){ LOG_WARN("No $DISPLAY, using 
PythonUI instead of QtUI"); gui="PythonUI"; }
                
        shared_ptr<FrontEnd> frontEnd = 
dynamic_pointer_cast<FrontEnd>(ClassFactory::instance().createShared(gui));

_______________________________________________
Mailing list: https://launchpad.net/~yade-dev
Post to     : [email protected]
Unsubscribe : https://launchpad.net/~yade-dev
More help   : https://help.launchpad.net/ListHelp

Reply via email to