X-Git-Url: https://git.netwichtig.de/gitweb/?a=blobdiff_plain;f=src%2Fsrc%2Fsearch.c;h=b1dc884c9341d715f2faebbd8deffd9d4476c7ef;hb=0e8aed8aab2d2b68d1f6e6b0b2985de2bd6d2a73;hp=cd522dae82344e36e44c96aa0e3d0b138dd567e2;hpb=14b3c5bc64a16df07583fe4b5ef2e0129d063893;p=user%2Fhenk%2Fcode%2Fexim.git diff --git a/src/src/search.c b/src/src/search.c index cd522dae8..b1dc884c9 100644 --- a/src/src/search.c +++ b/src/src/search.c @@ -540,10 +540,10 @@ else } else { - t = store_get(sizeof(tree_node) + len + sizeof(expiring_data)); - e = (expiring_data *)((char *)t + sizeof(tree_node) + len); + e = store_get(sizeof(expiring_data) + sizeof(tree_node) + len); e->expiry = do_cache == UINT_MAX ? 0 : time(NULL)+do_cache; e->ptr = data; + t = (tree_node *)(e+1); memcpy(t->name, keystring, len); t->data.ptr = e; tree_insertnode(&c->item_cache, t); @@ -757,7 +757,7 @@ else if (partial >= 0) } /* If nothing has been matched, but the option to look for "*@" is set, try -replacing everthing to the left of @ by *. After a match, the wild part +replacing everything to the left of @ by *. After a match, the wild part is set to the string to the left of the @. */ if (yield == NULL && (starflags & SEARCH_STARAT) != 0)