]> git.lyx.org Git - features.git/commitdiff
Consider file encoding for modules in reconfigure
authorJosé Matos <jamatos@lyx.org>
Sat, 15 Aug 2020 20:02:38 +0000 (21:02 +0100)
committerJosé Matos <jamatos@lyx.org>
Sat, 15 Aug 2020 20:02:38 +0000 (21:02 +0100)
If the modules are not in utf8 then we warn and skip that file
like it happens for layout files.

This a port of commit a8094051c1ae9c546c76bb0d3300d83e6cdbadef to stable.

lib/configure.py
status.23x

index a5a49b78cf036a3568dee74082f69a1cb53824b4..7fee68d33de03de1f2bade8e2c48ddda29c4ddc6 100644 (file)
@@ -228,7 +228,7 @@ def checkTeXPaths():
             if sys.version_info[0] < 3:
                 inpname = shortPath(unicode(tmpfname, encoding)).replace('\\', '/')
             else:
-                inpname = shortPath(tmpfname).replace('\\', '/') 
+                inpname = shortPath(tmpfname).replace('\\', '/')
         else:
             inpname = cmdOutput('cygpath -m ' + tmpfname)
         logname = os.path.basename(re.sub("(?i).ltx", ".log", inpname))
@@ -1174,7 +1174,7 @@ def checkConverterEntries():
 \converter svgz       png        "%%"    ""'''],
             path = ['', inkscape_path])
     #
-    checkProg('Gnuplot', ['gnuplot'], 
+    checkProg('Gnuplot', ['gnuplot'],
         rc_entry = [ r'''\Format gnuplot     "gp, gnuplot"    "Gnuplot"     "" "" ""  "vector" "text/plain"
 \converter gnuplot      pdf6      "python -tt $$s/scripts/gnuplot2pdf.py $$i $$o"    "needauth"''' ])
     #
@@ -1584,9 +1584,17 @@ def checkModulesConfig():
           continue
 
       seen.append(filename)
-      retval = processModuleFile(file, filename, bool_docbook)
-      if retval:
-          tx.write(retval)
+      try:
+          retval = processModuleFile(file, filename, bool_docbook)
+          if retval:
+              tx.write(retval)
+      except UnicodeDecodeError:
+          logger.warning("**************************************************\n"
+                         "Module file '%s'\n"
+                         "cannot be decoded in utf-8.\n"
+                         "Please check if the file has the correct encoding.\n"
+                         "Skipping this file!\n"
+                         "**************************************************" % filename)
   tx.close()
   logger.info('\tdone')
 
index f8420a1b050a06c737db6ab3537336661889928f..0a75945b0dbf3e87789388ec29ee826f107d926c 100644 (file)
@@ -88,7 +88,7 @@ What's new
 
 - Do not allow editing of math package list in Document > Settings > Math Options,
   thus preventing a crash (bug 11931).
-  
+
 - Maintain standard layout for separating paragraphs when switching layouts (bug 11936).
 
 
@@ -114,3 +114,7 @@ What's new
 
 - Wininstaller, fix bug where previous installations, with emergency version
   greater than 1, could not be seen in registry on overinstall
+
+- Do not break configuration if a module file is not decodable (file
+  not encoded in utf-8). Rather than that, issue a warning and skip
+  that file (a variant of bug 11736).