summaryrefslogtreecommitdiffstats
path: root/src/corelib/io/qtemporaryfile.cpp
diff options
context:
space:
mode:
authorJoão Abecasis <joao.abecasis@nokia.com>2011-08-05 10:32:08 +0200
committerQt by Nokia <qt-info@nokia.com>2011-10-20 05:49:33 +0200
commit88316bf283b27a9797179b3aea416898e4cd14b0 (patch)
tree8a6cae675f330f927e0f5c9905a36d9bf8940125 /src/corelib/io/qtemporaryfile.cpp
parent74276637d9ad3ee67440c37f8c26853cc6f51bc9 (diff)
Changed if/if/else/if/eleven chain to switch
Inlined isdigit in switch statement. Removed unused #includes. Documented unreachable segment with code (Q_ASSERT). Reviewed-by: Denis Dzyubenko (cherry picked from commit 3596db6c9bb8db42476d0c7b52fa2043dc67135b) Change-Id: I98c33801fd8794e95ba8fc0b5c4efe9b1910682b Reviewed-by: João Abecasis <joao.abecasis@nokia.com>
Diffstat (limited to 'src/corelib/io/qtemporaryfile.cpp')
-rw-r--r--src/corelib/io/qtemporaryfile.cpp37
1 files changed, 22 insertions, 15 deletions
diff --git a/src/corelib/io/qtemporaryfile.cpp b/src/corelib/io/qtemporaryfile.cpp
index d9b1143611..67b737981b 100644
--- a/src/corelib/io/qtemporaryfile.cpp
+++ b/src/corelib/io/qtemporaryfile.cpp
@@ -53,10 +53,6 @@
# include <errno.h>
#endif
-#include <stdlib.h>
-#include <time.h>
-#include <ctype.h>
-
#if defined(Q_OS_UNIX)
# include "private/qcore_unix_p.h" // overrides QT_OPEN
#endif
@@ -153,23 +149,34 @@ static int createFileFromTemplate(char *const path,
for (char *iter = placeholderStart;;) {
// Character progression: [0-9] => 'a' ... 'z' => 'A' .. 'Z'
// String progression: "ZZaiC" => "aabiC"
- if (*iter == 'Z') {
- *iter++ = 'a';
- if (iter == placeholderEnd)
- return -1;
- } else {
- if (isdigit(*iter))
+ switch (*iter) {
+ case 'Z':
+ // Rollover, advance next character
*iter = 'a';
- else if (*iter == 'z') /* inc from z to A */
+ if (++iter == placeholderEnd)
+ return -1;
+
+ continue;
+
+ case '0': case '1': case '2': case '3': case '4':
+ case '5': case '6': case '7': case '8': case '9':
+ *iter = 'a';
+ break;
+
+ case 'z':
+ // increment 'z' to 'A'
*iter = 'A';
- else {
+ break;
+
+ default:
++*iter;
- }
- break;
+ break;
}
+ break;
}
}
- /*NOTREACHED*/
+
+ Q_ASSERT(false);
}
//************* QTemporaryFileEngine