summaryrefslogtreecommitdiffstats
path: root/src/lib
diff options
context:
space:
mode:
authorJérémy Zurcher <jeremy@asynk.ch>2012-06-02 19:08:29 +0200
committerJérémy Zurcher <jeremy@asynk.ch>2012-06-02 19:08:29 +0200
commit722cc78e6f2105108225212a0960f1b928fa71f2 (patch)
treeba6bd98532317db4127eff2ebd694a5d3c2ba38e /src/lib
parent5ae90b6d54c533f97e9033a3ccd4ab1109c6977d (diff)
downloadedoors-722cc78e6f2105108225212a0960f1b928fa71f2.zip
edoors-722cc78e6f2105108225212a0960f1b928fa71f2.tar.gz
eiotas_particle_split_dst: to keep actual stringshare, check length && strncmp
Diffstat (limited to 'src/lib')
-rw-r--r--src/lib/eiotas_particle.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/lib/eiotas_particle.c b/src/lib/eiotas_particle.c
index 00ad145..f29eeda 100644
--- a/src/lib/eiotas_particle.c
+++ b/src/lib/eiotas_particle.c
@@ -162,7 +162,7 @@ EAPI void eiotas_particle_split_dst(Eiotas_Particle *particle)
n=(sep-dst);
/* door defined */
if(particle->cur_room) {
- if(strncmp(particle->cur_room,dst,n)!=0) {
+ if( eina_stringshare_strlen(particle->cur_room)!=n || strncmp(particle->cur_room,dst,n)!=0) {
eina_stringshare_del(particle->cur_room);
particle->cur_room = eina_stringshare_add_length(dst,n);
}
@@ -175,7 +175,7 @@ EAPI void eiotas_particle_split_dst(Eiotas_Particle *particle)
}
/* door defined */
if(particle->cur_door) {
- if(strncmp(particle->cur_door,sep,n)!=0) {
+ if( eina_stringshare_strlen(particle->cur_door)!=n || strncmp(particle->cur_door,sep,n)!=0) {
eina_stringshare_del(particle->cur_door);
particle->cur_door = eina_stringshare_add_length(sep,n);
}