diff options
| author | gingerBill <gingerBill@users.noreply.github.com> | 2024-05-03 17:14:32 +0100 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2024-05-03 17:14:32 +0100 |
| commit | 595726e6c5fdd64175138e75026820ff230a841d (patch) | |
| tree | 874a2129f58c3962cdc611fe16ce3e56bac554d0 /src/string.cpp | |
| parent | fed03e896c2118bf9506d3781317591db1a8f1f5 (diff) | |
| parent | 60ef4fda4dd71e5474bb2598c4e0d18c58924e99 (diff) | |
Merge pull request #3369 from joakin/fix-dynamic-library-from-vendor-on-linux
Fix vendor dynamic libraries not working on Linux
Diffstat (limited to 'src/string.cpp')
| -rw-r--r-- | src/string.cpp | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/src/string.cpp b/src/string.cpp index b92dd589e..86eddeddd 100644 --- a/src/string.cpp +++ b/src/string.cpp @@ -328,6 +328,25 @@ gb_internal bool string_contains_char(String const &s, u8 c) { return false; } +gb_internal bool string_contains_string(String const &haystack, String const &needle) { + if (needle.len == 0) return true; + if (needle.len > haystack.len) return false; + + for (isize i = 0; i <= haystack.len - needle.len; i++) { + bool found = true; + for (isize j = 0; j < needle.len; j++) { + if (haystack[i + j] != needle[j]) { + found = false; + break; + } + } + if (found) { + return true; + } + } + return false; +} + gb_internal String filename_from_path(String s) { isize i = string_extension_position(s); if (i >= 0) { |