Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(173)

Side by Side Diff: build/linux/dump_signature.py

Issue 132034: Make symbol signatures upper-case. (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: Created 11 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 #!/usr/bin/python2.4 1 #!/usr/bin/python2.4
2 # 2 #
3 # Copyright (c) 2009 The Chromium Authors. All rights reserved. 3 # Copyright (c) 2009 The Chromium Authors. All rights reserved.
4 # Use of this source code is governed by a BSD-style license that can be 4 # Use of this source code is governed by a BSD-style license that can be
5 # found in the LICENSE file. 5 # found in the LICENSE file.
6 # 6 #
7 # This generates symbol signatures with the same algorithm as 7 # This generates symbol signatures with the same algorithm as
8 # src/breakpad/linux/minidump_writer.cc@17081 8 # src/breakpad/linux/minidump_writer.cc@17081
9 9
10 import sys 10 import sys
11 import struct 11 import struct
12 12
13 if len(sys.argv) != 2: 13 if len(sys.argv) != 2:
14 sys.stderr.write("Error, no filename specified.\n") 14 sys.stderr.write("Error, no filename specified.\n")
15 sys.exit(1) 15 sys.exit(1)
16 16
17 bin = open(sys.argv[1]) 17 bin = open(sys.argv[1])
18 data = bin.read(4096) 18 data = bin.read(4096)
19 if len(data) != 4096: 19 if len(data) != 4096:
20 sys.stderr.write("Error, did not read first page of data.\n"); 20 sys.stderr.write("Error, did not read first page of data.\n");
21 sys.exit(1) 21 sys.exit(1)
22 bin.close() 22 bin.close()
23 23
24 signature = [0] * 16 24 signature = [0] * 16
25 for i in range(0, 4096): 25 for i in range(0, 4096):
26 signature[i % 16] ^= ord(data[i]) 26 signature[i % 16] ^= ord(data[i])
27 27
28 out = ('%08x%04x%04x%02x%02x%02x%02x%02x%02x%02x%02x0' % 28 # Append a 0 at the end for the generation number (always 0 on Linux)
29 out = ('%08X%04X%04X%02X%02X%02X%02X%02X%02X%02X%02X0' %
29 struct.unpack('I2H8B', struct.pack('16B', *signature))) 30 struct.unpack('I2H8B', struct.pack('16B', *signature)))
30 sys.stdout.write(out) 31 sys.stdout.write(out)
OLDNEW
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698