comparison Resources/EmbedResources.py @ 55:601ee9b7f2c7

fixes
author Sebastien Jodogne <s.jodogne@gmail.com>
date Tue, 11 Sep 2012 12:19:42 +0200
parents e1a3ae0dadf3
children 71c4a4abe90b
comparison
equal deleted inserted replaced
54:42a449dac415 55:601ee9b7f2c7
140 140
141 ##################################################################### 141 #####################################################################
142 ## Write the resource content in the .cpp source 142 ## Write the resource content in the .cpp source
143 ##################################################################### 143 #####################################################################
144 144
145 PYTHON_MAJOR_VERSION = sys.version_info[0]
146
145 def WriteResource(cpp, item): 147 def WriteResource(cpp, item):
146 cpp.write(' static const uint8_t resource%dBuffer[] = {' % item['Index']) 148 cpp.write(' static const uint8_t resource%dBuffer[] = {' % item['Index'])
147 149
148 f = open(item['Filename'], "rb") 150 f = open(item['Filename'], "rb")
149 content = f.read() 151 content = f.read()
150 f.close() 152 f.close()
151 153
152 # http://stackoverflow.com/a/1035360 154 # http://stackoverflow.com/a/1035360
153 pos = 0 155 pos = 0
154 for b in content: 156 for b in content:
157 if PYTHON_MAJOR_VERSION == 2:
158 c = ord(b[0])
159 else:
160 c = b
161
155 if pos > 0: 162 if pos > 0:
156 cpp.write(', ') 163 cpp.write(', ')
157 164
158 if (pos % 16) == 0: 165 if (pos % 16) == 0:
159 cpp.write('\n ') 166 cpp.write('\n ')
160 167
161 if ord(b[0]) < 0: 168 if c < 0:
162 raise Exception("Internal error") 169 raise Exception("Internal error")
163 170
164 cpp.write("0x%02x" % ord(b[0])) 171 cpp.write("0x%02x" % c)
165 pos += 1 172 pos += 1
166 173
167 cpp.write(' };\n') 174 cpp.write(' };\n')
168 cpp.write(' static const size_t resource%dSize = %d;\n' % (item['Index'], pos)) 175 cpp.write(' static const size_t resource%dSize = %d;\n' % (item['Index'], pos))
169 176