summaryrefslogtreecommitdiffstats
path: root/apps/tagcache.c
diff options
context:
space:
mode:
Diffstat (limited to 'apps/tagcache.c')
-rw-r--r--apps/tagcache.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/apps/tagcache.c b/apps/tagcache.c
index bf23ac74dc..37f443e036 100644
--- a/apps/tagcache.c
+++ b/apps/tagcache.c
@@ -326,7 +326,10 @@ static void allocate_tempbuf(void)
if (tempbuf)
tempbuf_size = size;
#else /* !__PCTOOL__ */
- tempbuf_handle = core_alloc_maximum("tc tempbuf", &size, NULL);
+ /* Need to pass dummy ops to prevent the buffer being moved
+ * out from under us, since we yield during the tagcache commit. */
+ static struct buflib_callbacks dummy_ops;
+ tempbuf_handle = core_alloc_maximum("tc tempbuf", &size, &dummy_ops);
if (tempbuf_handle > 0)
{
tempbuf = core_get_data(tempbuf_handle);