← Back to team overview

openlp-core team mailing list archive

[Merge] lp:~googol/openlp/bug-1086987-2.0 into lp:openlp/2.0

 

Andreas Preikschat has proposed merging lp:~googol/openlp/bug-1086987-2.0 into lp:openlp/2.0.

Commit message:
bzr merge lp:~googol/openlp/bug-1086987-2.0 -m "fixed Bug 1086987 (Log system does not log all exceptions)" --fixes lp:1086987

Requested reviews:
  OpenLP Core (openlp-core)
Related bugs:
  Bug #1086987 in OpenLP: "Log system does not log all exceptions"
  https://bugs.launchpad.net/openlp/+bug/1086987

For more details, see:
https://code.launchpad.net/~googol/openlp/bug-1086987-2.0/+merge/144030

Hello,

- fixed Bug 1086987 (Log system does not log all exceptions)

In fact I just ensured that the path to the log file is printed again. I couldn't reproduce the other bug again (although I could ealier today). If I spot it again, I might tackle it.
-- 
https://code.launchpad.net/~googol/openlp/bug-1086987-2.0/+merge/144030
Your team OpenLP Core is requested to review the proposed merge of lp:~googol/openlp/bug-1086987-2.0 into lp:openlp/2.0.
=== modified file 'openlp/core/__init__.py'
--- openlp/core/__init__.py	2012-12-30 19:41:24 +0000
+++ openlp/core/__init__.py	2013-01-20 18:51:20 +0000
@@ -228,7 +228,7 @@
     """
     Setup our logging using log_path
     """
-    check_directory_exists(log_path)
+    check_directory_exists(log_path, True)
     filename = os.path.join(log_path, u'openlp.log')
     logfile = logging.FileHandler(filename, u'w')
     logfile.setFormatter(logging.Formatter(
@@ -264,13 +264,6 @@
     # Parse command line options and deal with them.
     # Use args supplied programatically if possible.
     (options, args) = parser.parse_args(args) if args else parser.parse_args()
-    if options.portable:
-        app_path = AppLocation.get_directory(AppLocation.AppDir)
-        set_up_logging(os.path.abspath(os.path.join(app_path, u'..',
-            u'..', u'Other')))
-        log.info(u'Running portable')
-    else:
-        set_up_logging(AppLocation.get_directory(AppLocation.CacheDir))
     qt_args = []
     if options.loglevel.lower() in ['d', 'debug']:
         log.setLevel(logging.DEBUG)
@@ -295,6 +288,10 @@
         app.setApplicationName(u'OpenLPPortable')
         Settings.setDefaultFormat(Settings.IniFormat)
         # Get location OpenLPPortable.ini
+        app_path = AppLocation.get_directory(AppLocation.AppDir)
+        set_up_logging(os.path.abspath(os.path.join(app_path, u'..',
+            u'..', u'Other')))
+        log.info(u'Running portable')
         portable_settings_file = os.path.abspath(os.path.join(app_path, u'..',
             u'..', u'Data', u'OpenLP.ini'))
         # Make this our settings file
@@ -310,6 +307,7 @@
         portable_settings.setValue(u'advanced/is portable', True)
         portable_settings.sync()
     else:
+        set_up_logging(AppLocation.get_directory(AppLocation.CacheDir))
         app.setApplicationName(u'OpenLP')
     app.setApplicationVersion(get_application_version()[u'version'])
     # Instance check

=== modified file 'openlp/core/lib/__init__.py'
--- openlp/core/lib/__init__.py	2012-12-30 19:41:24 +0000
+++ openlp/core/lib/__init__.py	2013-01-20 18:51:20 +0000
@@ -335,14 +335,18 @@
     return text
 
 
-def check_directory_exists(dir):
+def check_directory_exists(dir, do_not_log=False):
     """
     Check a theme directory exists and if not create it
 
     ``dir``
         Theme directory to make sure exists
+
+    ``do_not_log``
+        To not log anything. This is need for the start up, when the log isn't ready.
     """
-    log.debug(u'check_directory_exists %s' % dir)
+    if not do_not_log:
+        log.debug(u'check_directory_exists %s' % dir)
     try:
         if not os.path.exists(dir):
             os.makedirs(dir)


Follow ups