aboutsummaryrefslogtreecommitdiffstats
path: root/memrcasemem.c
diff options
context:
space:
mode:
authorMattias Andrée <maandree@kth.se>2024-08-18 09:58:23 +0200
committerMattias Andrée <maandree@kth.se>2024-08-18 09:58:23 +0200
commita69f0f613687edf6c1f1ee83b462f77e8ea3c9a9 (patch)
treed976683461a0f427d2f1ef79a8732a048dd0c67b /memrcasemem.c
parentMerge tag '1.3' into since (diff)
parentUpdate VERSION_MINOR (diff)
downloadlibsimple-a69f0f613687edf6c1f1ee83b462f77e8ea3c9a9.tar.gz
libsimple-a69f0f613687edf6c1f1ee83b462f77e8ea3c9a9.tar.bz2
libsimple-a69f0f613687edf6c1f1ee83b462f77e8ea3c9a9.tar.xz
Merge tag '1.4' into since
Version 1.4
Diffstat (limited to 'memrcasemem.c')
-rw-r--r--memrcasemem.c9
1 files changed, 5 insertions, 4 deletions
diff --git a/memrcasemem.c b/memrcasemem.c
index e7672f9..1ed9bb2 100644
--- a/memrcasemem.c
+++ b/memrcasemem.c
@@ -1,16 +1,17 @@
/* See LICENSE file for copyright and license details. */
-#include "libsimple.h"
+#include "common.h"
#ifndef TEST
void *
libsimple_memrcasemem(const void *hay_, size_t hayn, const void *sub_, size_t subn)
{
- char *hay = (void *)hay_, *start;
+ const char *hay = hay_;
const char *sub = sub_;
+ const char *start;
if (!subn)
- return &hay[hayn];
+ return &REMOVE_CONST(hay, char *)[hayn];
if (hayn < subn)
return NULL;
if (subn == 1)
@@ -20,7 +21,7 @@ libsimple_memrcasemem(const void *hay_, size_t hayn, const void *sub_, size_t su
hay = &hay[hayn - subn];
do {
if (tolower(*hay) == tolower(*sub) && !libsimple_memcasecmp(hay, sub, subn))
- return hay;
+ return REMOVE_CONST(hay, char *);
} while (hay-- != start);
return NULL;