* [PATCH 1/2] lib/strtox: whitespace cleanup
@ 2017-04-11 6:39 Sascha Hauer
2017-04-11 6:39 ` [PATCH 2/2] lib/strtox: remove unnecessary islower() Sascha Hauer
2017-04-15 8:22 ` [PATCH 1/2] lib/strtox: whitespace cleanup Sam Ravnborg
0 siblings, 2 replies; 4+ messages in thread
From: Sascha Hauer @ 2017-04-11 6:39 UTC (permalink / raw)
To: Barebox List
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
---
lib/strtox.c | 53 +++++++++++++++++++++++++++++++----------------------
1 file changed, 31 insertions(+), 22 deletions(-)
diff --git a/lib/strtox.c b/lib/strtox.c
index cfe61240cc..45aa06bacc 100644
--- a/lib/strtox.c
+++ b/lib/strtox.c
@@ -1,67 +1,76 @@
#include <common.h>
#include <linux/ctype.h>
-unsigned long simple_strtoul(const char *cp,char **endp,unsigned int base)
+unsigned long simple_strtoul(const char *cp, char **endp, unsigned int base)
{
- unsigned long result = 0,value;
+ unsigned long result = 0, value;
if (*cp == '0') {
cp++;
+
if ((*cp == 'x') && isxdigit(cp[1])) {
base = 16;
cp++;
}
- if (!base) {
+
+ if (!base)
base = 8;
- }
}
- if (!base) {
+
+ if (!base)
base = 10;
- }
- while (isxdigit(*cp) && (value = isdigit(*cp) ? *cp-'0' : (islower(*cp)
- ? toupper(*cp) : *cp)-'A'+10) < base) {
- result = result*base + value;
+
+ while (isxdigit(*cp) && (value = isdigit(*cp) ? *cp - '0' : (islower(*cp)
+ ? toupper(*cp) : *cp) - 'A' + 10) < base) {
+ result = result * base + value;
cp++;
}
+
if (endp)
*endp = (char *)cp;
+
return result;
}
EXPORT_SYMBOL(simple_strtoul);
-long simple_strtol(const char *cp,char **endp,unsigned int base)
+long simple_strtol(const char *cp, char **endp, unsigned int base)
{
- if(*cp=='-')
- return -simple_strtoul(cp+1,endp,base);
- return simple_strtoul(cp,endp,base);
+ if (*cp == '-')
+ return -simple_strtoul(cp + 1, endp, base);
+
+ return simple_strtoul(cp, endp, base);
}
EXPORT_SYMBOL(simple_strtol);
-unsigned long long simple_strtoull (const char *cp, char **endp, unsigned int base)
+unsigned long long simple_strtoull(const char *cp, char **endp, unsigned int base)
{
unsigned long long result = 0, value;
if (*cp == '0') {
cp++;
- if ((*cp == 'x') && isxdigit (cp[1])) {
+
+ if ((*cp == 'x') && isxdigit(cp[1])) {
base = 16;
cp++;
}
- if (!base) {
+
+ if (!base)
base = 8;
- }
}
- if (!base) {
+
+ if (!base)
base = 10;
- }
- while (isxdigit (*cp) && (value = isdigit (*cp)
+
+ while (isxdigit(*cp) && (value = isdigit(*cp)
? *cp - '0'
- : (islower (*cp) ? toupper (*cp) : *cp) - 'A' + 10) < base) {
+ : (islower(*cp) ? toupper(*cp) : *cp) - 'A' + 10) < base) {
result = result * base + value;
cp++;
}
+
if (endp)
- *endp = (char *) cp;
+ *endp = (char *)cp;
+
return result;
}
EXPORT_SYMBOL(simple_strtoull);
--
2.11.0
_______________________________________________
barebox mailing list
barebox@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/barebox
^ permalink raw reply related [flat|nested] 4+ messages in thread
* [PATCH 2/2] lib/strtox: remove unnecessary islower()
2017-04-11 6:39 [PATCH 1/2] lib/strtox: whitespace cleanup Sascha Hauer
@ 2017-04-11 6:39 ` Sascha Hauer
2017-04-15 8:24 ` Sam Ravnborg
2017-04-15 8:22 ` [PATCH 1/2] lib/strtox: whitespace cleanup Sam Ravnborg
1 sibling, 1 reply; 4+ messages in thread
From: Sascha Hauer @ 2017-04-11 6:39 UTC (permalink / raw)
To: Barebox List
toupper() does the right thing, no need to test for islower()
beforehand, so
islower(*cp) ? toupper(*cp) : *cp
can be simplified to:
toupper(*cp)
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
---
lib/strtox.c | 9 ++++-----
1 file changed, 4 insertions(+), 5 deletions(-)
diff --git a/lib/strtox.c b/lib/strtox.c
index 45aa06bacc..3bb6b0ef89 100644
--- a/lib/strtox.c
+++ b/lib/strtox.c
@@ -20,8 +20,8 @@ unsigned long simple_strtoul(const char *cp, char **endp, unsigned int base)
if (!base)
base = 10;
- while (isxdigit(*cp) && (value = isdigit(*cp) ? *cp - '0' : (islower(*cp)
- ? toupper(*cp) : *cp) - 'A' + 10) < base) {
+ while (isxdigit(*cp) && (value = isdigit(*cp) ?
+ *cp - '0' : toupper(*cp) - 'A' + 10) < base) {
result = result * base + value;
cp++;
}
@@ -61,9 +61,8 @@ unsigned long long simple_strtoull(const char *cp, char **endp, unsigned int bas
if (!base)
base = 10;
- while (isxdigit(*cp) && (value = isdigit(*cp)
- ? *cp - '0'
- : (islower(*cp) ? toupper(*cp) : *cp) - 'A' + 10) < base) {
+ while (isxdigit(*cp) && (value = isdigit(*cp) ?
+ *cp - '0' : toupper(*cp) - 'A' + 10) < base) {
result = result * base + value;
cp++;
}
--
2.11.0
_______________________________________________
barebox mailing list
barebox@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/barebox
^ permalink raw reply related [flat|nested] 4+ messages in thread
* Re: [PATCH 1/2] lib/strtox: whitespace cleanup
2017-04-11 6:39 [PATCH 1/2] lib/strtox: whitespace cleanup Sascha Hauer
2017-04-11 6:39 ` [PATCH 2/2] lib/strtox: remove unnecessary islower() Sascha Hauer
@ 2017-04-15 8:22 ` Sam Ravnborg
1 sibling, 0 replies; 4+ messages in thread
From: Sam Ravnborg @ 2017-04-15 8:22 UTC (permalink / raw)
To: Sascha Hauer; +Cc: Barebox List
Hi Sasha.
Looks much better.
On Tue, Apr 11, 2017 at 08:39:33AM +0200, Sascha Hauer wrote:
> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Acked-by: Sam Ravnborg <sam@ravnborg.org>
_______________________________________________
barebox mailing list
barebox@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/barebox
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH 2/2] lib/strtox: remove unnecessary islower()
2017-04-11 6:39 ` [PATCH 2/2] lib/strtox: remove unnecessary islower() Sascha Hauer
@ 2017-04-15 8:24 ` Sam Ravnborg
0 siblings, 0 replies; 4+ messages in thread
From: Sam Ravnborg @ 2017-04-15 8:24 UTC (permalink / raw)
To: Sascha Hauer; +Cc: Barebox List
On Tue, Apr 11, 2017 at 08:39:34AM +0200, Sascha Hauer wrote:
> toupper() does the right thing, no need to test for islower()
> beforehand, so
>
> islower(*cp) ? toupper(*cp) : *cp
>
> can be simplified to:
>
> toupper(*cp)
>
> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Acked-by: Sam Ravnborg <sam@ravnborg.org>
_______________________________________________
barebox mailing list
barebox@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/barebox
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2017-04-15 8:25 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-04-11 6:39 [PATCH 1/2] lib/strtox: whitespace cleanup Sascha Hauer
2017-04-11 6:39 ` [PATCH 2/2] lib/strtox: remove unnecessary islower() Sascha Hauer
2017-04-15 8:24 ` Sam Ravnborg
2017-04-15 8:22 ` [PATCH 1/2] lib/strtox: whitespace cleanup Sam Ravnborg
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.