public inbox for linux-xfs@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH 5/6] xfsprogs: replace repeated blocks with a loop
@ 2010-10-06 18:49 Alex Elder
  0 siblings, 0 replies; only message in thread
From: Alex Elder @ 2010-10-06 18:49 UTC (permalink / raw)
  To: xfs

Replace a repeated block of code with an equivalent loop.

Signed-off-by: Alex Elder <aelder@sgi.com>

---
 db/metadump.c |   43 +++++++++----------------------------------
 1 file changed, 9 insertions(+), 34 deletions(-)

Index: b/db/metadump.c
===================================================================
--- a/db/metadump.c
+++ b/db/metadump.c
@@ -471,41 +471,16 @@ generate_obfuscated_name(
 		newhash = rol32(newhash, 3) ^ hash;
 
 		high_bit = 0;
+		for (i = 5; i > 0; i--) {
+		    	int shift = (i - 1) * 7;
 
-		newp[namelen - 5] = (newhash >> 28) & 0x7f ^ high_bit;
-		if (is_invalid_char(newp[namelen - 5])) {
-			newp[namelen - 5] ^= 1;
-			high_bit = 0x80;
-		} else
-			high_bit = 0;
-
-		newp[namelen - 4] = (newhash >> 21) & 0x7f ^ high_bit;
-		if (is_invalid_char(newp[namelen - 4])) {
-			newp[namelen - 4] ^= 1;
-			high_bit = 0x80;
-		} else
-			high_bit = 0;
-
-		newp[namelen - 3] = (newhash >> 14) & 0x7f ^ high_bit;
-		if (is_invalid_char(newp[namelen - 3])) {
-			newp[namelen - 3] ^= 1;
-			high_bit = 0x80;
-		} else
-			high_bit = 0;
-
-		newp[namelen - 2] = (newhash >> 7) & 0x7f ^ high_bit;
-		if (is_invalid_char(newp[namelen - 2])) {
-			newp[namelen - 2] ^= 1;
-			high_bit = 0x80;
-		} else
-			high_bit = 0;
-
-		newp[namelen - 1] = (newhash >> 0) & 0x7f ^ high_bit;
-		if (is_invalid_char(newp[namelen - 1])) {
-			newp[namelen - 1] ^= 1;
-			high_bit = 0x80;
-		} else
-			high_bit = 0;
+			newp[namelen - i] = (newhash >> shift) & 0x7f ^ high_bit;
+			if (is_invalid_char(newp[namelen - i])) {
+				newp[namelen - i] ^= 1;
+				high_bit = 0x80;
+			} else
+				high_bit = 0;
+		}
 
 		if (high_bit) {
 			newp[namelen - 5] ^= 0x10;


_______________________________________________
xfs mailing list
xfs@oss.sgi.com
http://oss.sgi.com/mailman/listinfo/xfs

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2010-10-06 18:48 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-10-06 18:49 [PATCH 5/6] xfsprogs: replace repeated blocks with a loop Alex Elder

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox