summaryrefslogtreecommitdiffstats
path: root/src/cc4group.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/cc4group.c')
-rw-r--r--src/cc4group.c11
1 files changed, 10 insertions, 1 deletions
diff --git a/src/cc4group.c b/src/cc4group.c
index cb37064..ad840f0 100644
--- a/src/cc4group.c
+++ b/src/cc4group.c
@@ -266,6 +266,9 @@ static void cc4group_copyErrorInformation(const CC4Group* const src, CC4Group* c
static const CC4Group_WarningCallback cc4group_defaultWarningCallback = cc4group_printToStderrWarningCallback;
static CC4Group_WarningCallback cc4group_warn = cc4group_defaultWarningCallback;
+static const CC4Group_EntryNameMatchingCallback cc4group_defaultEntryNameMatchingCallback = strcmp;
+static CC4Group_EntryNameMatchingCallback cc4group_namecmp = cc4group_defaultEntryNameMatchingCallback;
+
#define AddCleanUpJob(func, data) CleanUpJobListPrepend(this->cleanupJobs, (CC4Group_CleanupJob){(CC4Group_CleanupFunc)func, data});
static void memScrambleHeader(uint8_t* const data)
@@ -1958,7 +1961,7 @@ static GroupEntryListEntry* cc4group_getChildListEntryByPath(CC4Group* const thi
bool found = false;
ForeachGroupEntry(children)
{
- if(strcmp(entry->value.core.FileName, part) == 0)
+ if(cc4group_namecmp(part, entry->value.core.FileName) == 0)
{
currentParent = &entry->value;
listEntry = entry;
@@ -2296,6 +2299,11 @@ static void cc4group_setWarningCallback(const CC4Group_WarningCallback warningCa
cc4group_warn = (warningCallback == NULL) ? cc4group_defaultWarningCallback : warningCallback;
}
+static void cc4group_setEntryNameMatchingCallback(const CC4Group_EntryNameMatchingCallback matchingCallback)
+{
+ cc4group_namecmp = (matchingCallback == NULL) ? cc4group_defaultEntryNameMatchingCallback : matchingCallback;
+}
+
static const char* cc4group_getErrorMessage(CC4Group* const this)
{
assert(this);
@@ -3450,6 +3458,7 @@ CC4Group_API cc4group = {
.setTmpMemoryStrategy = cc4group_setTmpMemoryStrategy,
.setWarningCallback = cc4group_setWarningCallback,
+ .setEntryNameMatchingCallback = cc4group_setEntryNameMatchingCallback,
.new = cc4group_new,