[yum-git] debuginfo-install.py repodiff.py yum-complete-transaction.py yumdownloader.py

Tim Lauridsen timlau at linux.duke.edu
Mon Jun 2 09:58:51 UTC 2008


 debuginfo-install.py        |   16 ++++++++++++++++
 repodiff.py                 |   10 ++++++++--
 yum-complete-transaction.py |   16 ++++++++++++++++
 yumdownloader.py            |   16 ++++++++++++++++
 4 files changed, 56 insertions(+), 2 deletions(-)

New commits:
commit 47ca95c29fe4fd6b2d74e8ad9be83264385e5c0a
Author: Tim Lauridsen <tla at rasmil.dk>
Date:   Mon Jun 2 11:48:01 2008 +0200

    Used the same cli setup (LANG,UTF-8) as in yum-cli (rhbz #445916)

diff --git a/debuginfo-install.py b/debuginfo-install.py
index 7b88bdc..df1823c 100755
--- a/debuginfo-install.py
+++ b/debuginfo-install.py
@@ -121,4 +121,20 @@ class DebugInfoInstall(YumUtilBase):
             
         
 if __name__ == '__main__':
+    import locale
+    # This test needs to be before locale.getpreferredencoding() as that
+    # does setlocale(LC_CTYPE, "")
+    try:
+        locale.setlocale(locale.LC_ALL, '')
+    except locale.Error, e:
+        # default to C locale if we get a failure.
+        print >> sys.stderr, 'Failed to set locale, defaulting to C'
+        os.environ['LC_ALL'] = 'C'
+        locale.setlocale(locale.LC_ALL, 'C')
+        
+    if True: # not sys.stdout.isatty():
+        import codecs
+        sys.stdout = codecs.getwriter(locale.getpreferredencoding())(sys.stdout)
+        sys.stdout.errors = 'replace'
+    
     util = DebugInfoInstall()
diff --git a/repodiff.py b/repodiff.py
index 0062116..9ffdb33 100755
--- a/repodiff.py
+++ b/repodiff.py
@@ -223,6 +223,9 @@ def main(args):
     
       
 if __name__ == "__main__":
+    import locale
+    # This test needs to be before locale.getpreferredencoding() as that
+    # does setlocale(LC_CTYPE, "")
     try:
         locale.setlocale(locale.LC_ALL, '')
     except locale.Error, e:
@@ -230,8 +233,11 @@ if __name__ == "__main__":
         print >> sys.stderr, 'Failed to set locale, defaulting to C'
         os.environ['LC_ALL'] = 'C'
         locale.setlocale(locale.LC_ALL, 'C')
-    if not sys.stdout.isatty():
-        import codecs, locale
+        
+    if True: # not sys.stdout.isatty():
+        import codecs
         sys.stdout = codecs.getwriter(locale.getpreferredencoding())(sys.stdout)
+        sys.stdout.errors = 'replace'
+
     main(sys.argv[1:])
     
diff --git a/yum-complete-transaction.py b/yum-complete-transaction.py
index c8cd080..b35ebc8 100755
--- a/yum-complete-transaction.py
+++ b/yum-complete-transaction.py
@@ -207,6 +207,22 @@ class YumCompleteTransaction(YumUtilBase):
         
     
 if __name__ == '__main__':
+    import locale
+    # This test needs to be before locale.getpreferredencoding() as that
+    # does setlocale(LC_CTYPE, "")
+    try:
+        locale.setlocale(locale.LC_ALL, '')
+    except locale.Error, e:
+        # default to C locale if we get a failure.
+        print >> sys.stderr, 'Failed to set locale, defaulting to C'
+        os.environ['LC_ALL'] = 'C'
+        locale.setlocale(locale.LC_ALL, 'C')
+        
+    if True: # not sys.stdout.isatty():
+        import codecs
+        sys.stdout = codecs.getwriter(locale.getpreferredencoding())(sys.stdout)
+        sys.stdout.errors = 'replace'
+    
     util = YumCompleteTransaction()
         
        
diff --git a/yumdownloader.py b/yumdownloader.py
index 5ef8325..ddb4533 100755
--- a/yumdownloader.py
+++ b/yumdownloader.py
@@ -274,6 +274,22 @@ class YumDownloader(YumUtilBase):
         self.optparser.add_option("--archlist",
           help="only download packages of certain architecture(s)")        
 if __name__ == '__main__':
+    import locale
+    # This test needs to be before locale.getpreferredencoding() as that
+    # does setlocale(LC_CTYPE, "")
+    try:
+        locale.setlocale(locale.LC_ALL, '')
+    except locale.Error, e:
+        # default to C locale if we get a failure.
+        print >> sys.stderr, 'Failed to set locale, defaulting to C'
+        os.environ['LC_ALL'] = 'C'
+        locale.setlocale(locale.LC_ALL, 'C')
+        
+    if True: # not sys.stdout.isatty():
+        import codecs
+        sys.stdout = codecs.getwriter(locale.getpreferredencoding())(sys.stdout)
+        sys.stdout.errors = 'replace'
+
     util = YumDownloader()
         
         



More information about the Yum-cvs-commits mailing list