]> git.proxmox.com Git - mirror_edk2.git/commitdiff
BaseTools: Fix the bug to handle the read-only file
authorYonghong Zhu <yonghong.zhu@intel.com>
Wed, 14 Sep 2016 05:59:01 +0000 (13:59 +0800)
committerYonghong Zhu <yonghong.zhu@intel.com>
Thu, 15 Sep 2016 08:09:38 +0000 (16:09 +0800)
change the 'r+b' to 'rb' for some file's open, since these files we only
read it and no need to write. It can fix the bug that the file's attribute
had been set to read-only.

Cc: Liming Gao <liming.gao@intel.com>
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Yonghong Zhu <yonghong.zhu@intel.com>
Reviewed-by: Liming Gao <liming.gao@intel.com>
BaseTools/Source/Python/GenFds/FfsFileStatement.py
BaseTools/Source/Python/GenFds/Fv.py
BaseTools/Source/Python/GenFds/FvImageSection.py
BaseTools/Source/Python/GenFds/Region.py

index 690826bcb999b672739cea3fdf13188f1b5b11ce..f76ddf4d95a4fe2d0052cf8acab51c7c73e035c2 100644 (file)
@@ -101,7 +101,7 @@ class FileStatement (FileStatementClassObject) :
                     MaxAlignValue = 1\r
                     for Index, File in enumerate(self.FileName):\r
                         try:\r
-                            f = open(File, 'r+b')\r
+                            f = open(File, 'rb')\r
                         except:\r
                             GenFdsGlobalVariable.ErrorLogger("Error opening RAW file %s." % (File))\r
                         Content = f.read()\r
index 64d1709946483752fde8057b8cbf444dab51b04c..ab3f8b213b09b4260287be6e08884c972f90f6af 100644 (file)
@@ -182,7 +182,7 @@ class FV (FvClassObject):
         # Write the Fv contents to Buffer\r
         #\r
         if os.path.isfile(FvOutputFile):\r
-            FvFileObj = open ( FvOutputFile,'r+b')\r
+            FvFileObj = open ( FvOutputFile,'rb')\r
 \r
             GenFdsGlobalVariable.VerboseLogger( "\nGenerate %s FV Successfully" %self.UiFvName)\r
             GenFdsGlobalVariable.SharpCounter = 0\r
index 748d02f7000304bd03b49651f4305b3d994d5b75..5989978a7c8d6c18d8d285918634fa3100eea70a 100644 (file)
@@ -64,7 +64,7 @@ class FvImageSection(FvImageSectionClassObject):
             for FvFileName in FileList:\r
                 FvAlignmentValue = 0\r
                 if os.path.isfile(FvFileName):\r
-                    FvFileObj = open (FvFileName,'r+b')\r
+                    FvFileObj = open (FvFileName,'rb')\r
                     FvFileObj.seek(0)\r
                     # PI FvHeader is 0x48 byte\r
                     FvHeaderBuffer = FvFileObj.read(0x48)\r
@@ -109,7 +109,7 @@ class FvImageSection(FvImageSectionClassObject):
                 if self.FvFileName != None:\r
                     FvFileName = GenFdsGlobalVariable.ReplaceWorkspaceMacro(self.FvFileName)\r
                     if os.path.isfile(FvFileName):\r
-                        FvFileObj = open (FvFileName,'r+b')\r
+                        FvFileObj = open (FvFileName,'rb')\r
                         FvFileObj.seek(0)\r
                         # PI FvHeader is 0x48 byte\r
                         FvHeaderBuffer = FvFileObj.read(0x48)\r
index e393286a1637e07e9b96cbed2a5c268170c32323..945c5489fdfede83b46ce4f5fadc15f91b7629f0 100644 (file)
@@ -148,7 +148,7 @@ class Region(RegionClassObject):
                         EdkLogger.error("GenFds", GENFDS_ERROR,\r
                                         "Size of FV File (%s) is larger than Region Size 0x%X specified." \\r
                                         % (RegionData, Size))\r
-                    BinFile = open(FileName, 'r+b')\r
+                    BinFile = open(FileName, 'rb')\r
                     Buffer.write(BinFile.read())\r
                     BinFile.close()\r
                     Size = Size - FileLength\r
@@ -201,7 +201,7 @@ class Region(RegionClassObject):
                     EdkLogger.error("GenFds", GENFDS_ERROR,\r
                                     "Size 0x%X of Capsule File (%s) is larger than Region Size 0x%X specified." \\r
                                     % (FileLength, RegionData, Size))\r
-                BinFile = open(FileName, 'r+b')\r
+                BinFile = open(FileName, 'rb')\r
                 Buffer.write(BinFile.read())\r
                 BinFile.close()\r
                 Size = Size - FileLength\r