| summaryrefslogtreecommitdiff |
diff options
| author | Nathanael Sensfelder <SpamShield0@MultiAgentSystems.org> | 2017-02-09 20:03:33 +0100 |
|---|---|---|
| committer | Nathanael Sensfelder <SpamShield0@MultiAgentSystems.org> | 2017-02-09 20:03:33 +0100 |
| commit | 7af295b2ec22f06b24079bf895ac97079f64b6d7 (patch) | |
| tree | 84a554fc2c169956e3ee975152332c39f6c3615a /src/core/char.c | |
| parent | 9ca43c73ba29d6b42cd771f1567074418c883c3e (diff) | |
It's starting to "properly" reply...
The ACSL coverage is far behind though.
Diffstat (limited to 'src/core/char.c')
| -rw-r--r-- | src/core/char.c | 25 |
1 files changed, 23 insertions, 2 deletions
diff --git a/src/core/char.c b/src/core/char.c index 819cd57..a6b3c8d 100644 --- a/src/core/char.c +++ b/src/core/char.c @@ -18,9 +18,30 @@ int ZoO_word_cmp ( const ZoO_char word_a [const static 1], const size_t word_a_size, - const ZoO_char word_b [const static 1] + const ZoO_char word_b [const static 1], + const size_t word_b_size ) { - return strncmp((const char *) word_a, (const char *) word_b, word_a_size); + int result; + size_t min_size; + + if (word_a_size < word_b_size) + { + result = + strncmp((const char *) word_a, (const char *) word_b, word_a_size); + + return (result == 0) ? -1 : result; + } + else if (word_b_size < word_a_size) + { + result = + strncmp((const char *) word_a, (const char *) word_b, word_b_size); + + return (result == 0) ? 1 : result; + } + else + { + return strncmp((const char *) word_a, (const char *) word_b, word_a_size); + } } |


