diff options
author | Cedric Bail <cedric.bail@samsung.com> | 2013-12-04 19:05:03 +0900 |
---|---|---|
committer | Cedric Bail <cedric.bail@samsung.com> | 2013-12-04 19:05:03 +0900 |
commit | ff845b0a7c9bb6de48f5786a6a8a092d8819debf (patch) | |
tree | 07688d2e39dbcf0992caaa7994bc74c1023d35c3 | |
parent | 41c28c3deb33cce2b728c11f6a9f85ed62922f21 (diff) | |
download | efl-ff845b0a7c9bb6de48f5786a6a8a092d8819debf.tar.gz |
eina: improve cmp function of eina_hash string related hash.
For strings, we already know the length, so let's just not call the
heavy strcmp if the length is not already the same. Get some easy
speedup here.
-rw-r--r-- | src/lib/eina/eina_hash.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/src/lib/eina/eina_hash.c b/src/lib/eina/eina_hash.c index 274d3e840c..4b060644af 100644 --- a/src/lib/eina/eina_hash.c +++ b/src/lib/eina/eina_hash.c @@ -489,9 +489,13 @@ _eina_string_key_length(const char *key) } static int -_eina_string_key_cmp(const char *key1, EINA_UNUSED int key1_length, - const char *key2, EINA_UNUSED int key2_length) +_eina_string_key_cmp(const char *key1, int key1_length, + const char *key2, int key2_length) { + int delta; + + delta = key1_length - key2_length; + if (delta) return delta; return strcmp(key1, key2); } |