aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--scummsys.h4
-rw-r--r--sys.cpp10
2 files changed, 14 insertions, 0 deletions
diff --git a/scummsys.h b/scummsys.h
index 5f5e7fe6a6..51e7aa47f7 100644
--- a/scummsys.h
+++ b/scummsys.h
@@ -224,3 +224,7 @@ uint32 FORCEINLINE READ_BE_UINT32_UNALIGNED(void *ptr) {
#endif
+
+#ifdef NEED_STRDUP
+char *strdup(const char *s);
+#endif
diff --git a/sys.cpp b/sys.cpp
index 5f189c67df..80f2fdb519 100644
--- a/sys.cpp
+++ b/sys.cpp
@@ -167,3 +167,13 @@ bool Scumm::checkFixedDisk() {
return true;
}
+
+#ifdef NEED_STRDUP
+char *strdup(const char *s) {
+ int len = strlen(s) + 1;
+ char *d = (char*)malloc(len);
+ if (d) memcpy(d, s, len);
+ return d;
+}
+#endif /* NEED_STRDUP */
+