From d6eabc3ccf7f6ed8e09abd917ce7d64d11aae5d6 Mon Sep 17 00:00:00 2001 From: Yamagi Burmeister Date: Thu, 17 Jun 2010 05:52:57 +0000 Subject: [PATCH] =?UTF-8?q?Das=20Konzept=20der=20Schleife=20macht=20den=20?= =?UTF-8?q?Code=20lesbarer.=20Dies=20ist=20keine=20funktionale=20=C3=84nde?= =?UTF-8?q?rung?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/client/cl_cin.c | 114 ++++++-------------------------------------- 1 file changed, 14 insertions(+), 100 deletions(-) diff --git a/src/client/cl_cin.c b/src/client/cl_cin.c index 6b0f0d10..d02a8965 100644 --- a/src/client/cl_cin.c +++ b/src/client/cl_cin.c @@ -265,109 +265,23 @@ Huff1Decompress(cblock_t in) { while (count) { inbyte = *input++; - if (nodenum < 256) { - hnodes = hnodesbase + (nodenum << 9); - *out_p++ = nodenum; + int i = 0; - if (!--count) - break; + for (i = 0; i < 8; i++) { + if (nodenum < 256) { + hnodes = hnodesbase + (nodenum << 9); + *out_p++ = nodenum; + + if (!--count) + break; + + nodenum = cin.numhnodes1[nodenum]; + } + + nodenum = hnodes[nodenum * 2 + (inbyte & 1)]; + inbyte >>= 1; - nodenum = cin.numhnodes1[nodenum]; } - - nodenum = hnodes[nodenum * 2 + (inbyte & 1)]; - inbyte >>= 1; - - if (nodenum < 256) { - hnodes = hnodesbase + (nodenum << 9); - *out_p++ = nodenum; - - if (!--count) - break; - - nodenum = cin.numhnodes1[nodenum]; - } - - nodenum = hnodes[nodenum * 2 + (inbyte & 1)]; - inbyte >>= 1; - - if (nodenum < 256) { - hnodes = hnodesbase + (nodenum << 9); - *out_p++ = nodenum; - - if (!--count) - break; - - nodenum = cin.numhnodes1[nodenum]; - } - - nodenum = hnodes[nodenum * 2 + (inbyte & 1)]; - inbyte >>= 1; - - if (nodenum < 256) { - hnodes = hnodesbase + (nodenum << 9); - *out_p++ = nodenum; - - if (!--count) - break; - - nodenum = cin.numhnodes1[nodenum]; - } - - nodenum = hnodes[nodenum * 2 + (inbyte & 1)]; - inbyte >>= 1; - - if (nodenum < 256) { - hnodes = hnodesbase + (nodenum << 9); - *out_p++ = nodenum; - - if (!--count) - break; - - nodenum = cin.numhnodes1[nodenum]; - } - - nodenum = hnodes[nodenum * 2 + (inbyte & 1)]; - inbyte >>= 1; - - if (nodenum < 256) { - hnodes = hnodesbase + (nodenum << 9); - *out_p++ = nodenum; - - if (!--count) - break; - - nodenum = cin.numhnodes1[nodenum]; - } - - nodenum = hnodes[nodenum * 2 + (inbyte & 1)]; - inbyte >>= 1; - - if (nodenum < 256) { - hnodes = hnodesbase + (nodenum << 9); - *out_p++ = nodenum; - - if (!--count) - break; - - nodenum = cin.numhnodes1[nodenum]; - } - - nodenum = hnodes[nodenum * 2 + (inbyte & 1)]; - inbyte >>= 1; - - if (nodenum < 256) { - hnodes = hnodesbase + (nodenum << 9); - *out_p++ = nodenum; - - if (!--count) - break; - - nodenum = cin.numhnodes1[nodenum]; - } - - nodenum = hnodes[nodenum * 2 + (inbyte & 1)]; - inbyte >>= 1; } if (input - in.data != in.count && input - in.data != in.count + 1) {