diff --git a/src/geo.c b/src/geo.c index 049335a4f..f47f4ee22 100644 --- a/src/geo.c +++ b/src/geo.c @@ -734,14 +734,14 @@ void geohashCommand(client *c) { r[1].max = 90; geohashEncode(&r[0],&r[1],xy[0],xy[1],26,&hash); - char buf[11]; + char buf[12]; int i; - for (i = 0; i < 10; i++) { + for (i = 0; i < 11; i++) { int idx = (hash.bits >> (52-((i+1)*5))) & 0x1f; buf[i] = geoalphabet[idx]; } - buf[10] = '\0'; - addReplyBulkCBuffer(c,buf,10); + buf[11] = '\0'; + addReplyBulkCBuffer(c,buf,11); } } } diff --git a/tests/unit/geo.tcl b/tests/unit/geo.tcl index 76b9bda38..49e421ee9 100644 --- a/tests/unit/geo.tcl +++ b/tests/unit/geo.tcl @@ -129,7 +129,7 @@ start_server {tags {"geo"}} { r del points r geoadd points -5.6 42.6 test lindex [r geohash points test] 0 - } {ezs42e44yx} + } {ezs42e44yx0} test {GEOPOS simple} { r del points