Comment 13 for bug 479662

Revision history for this message
Niall Creech (sevenmachines-deactivatedaccount) wrote :

DESCRIPTION:
muse 0.8.1a-6.3 fails to start on ubuntu karmic amd64 (i386 not affected) with error
$ muse
muse: malloc.c:3074: sYSMALLOc: Assertion `(old_top == (((mbinptr) (((char *) &((av)->bins[((1) - 1) * 2])) - __builtin_offsetof (struct malloc_chunk, fd)))) && old_size == 0) || ((unsigned long) (old_size) >= (unsigned long)((((__builtin_offsetof (struct malloc_chunk, fd_nextsize))+((2 * (sizeof(size_t))) - 1)) & ~((2 * (sizeof(size_t))) - 1))) && ((old_top)->size & 0x1) && ((unsigned long)old_end & pagemask) == 0)' failed.
Aborted

TEST CASE:
try to run muse on karmic amd64 arch (i386 not affected)

FIX:
Make change in muse/memory.cpp on amd64 to fix memory grow,
- int esize = (idx+1) * sizeof(int);
+ int esize = (idx+1) * sizeof(int)+2;

Applied in ubuntu lucid
muse (0.8.1a-6.3ubuntu1) lucid; urgency=low

  * debian/30_fix_x64_sysmalloc.dpatch: fix sysmalloc on amd64 systems. Patch
    taken from upstream.
  * debian/patches/00list.amd64: only apply 30_fix_x64_sysmalloc.dpatch on amd64
    (LP: #479662 )

REGRESSION:
The package is currently unusable on amd64 but ok on i386. Changes affect only the build of the muse package. The patch affects is only applied to amd64 builds and should not affect i386 so hopefully regression potential should be low

https://launchpad.net/~sevenmachines/+archive/release/+packages