+++ /dev/null
---- a/lib/ext2fs/ext2fs.h
-+++ b/lib/ext2fs/ext2fs.h
-@@ -1212,7 +1212,26 @@
-
- if (align == 0)
- align = 8;
-- if (retval = posix_memalign((void **) ptr, align, size)) {
-+#ifdef HAVE_POSIX_MEMALIGN
-+ retval = posix_memalign((void **)ptr, align, size);
-+#else
-+#ifdef HAVE_MEMALIGN
-+ if ((*(void **)ptr = (void *)memalign(align, size)) == NULL)
-+ retval = errno;
-+ else
-+ retval = 0;
-+#else
-+#ifdef HAVE_VALLOC
-+ if ((*(void **)ptr = valloc(size)) == NULL)
-+ retval = errno;
-+ else
-+ retval = 0;
-+#else
-+# error "Impossible to allocate aligned memory!"
-+#endif /* HAVE_VALLOC */
-+#endif /* HAVE_MEMALIGN */
-+#endif /* HAVE_POSIX_MEMALIGN */
-+ if (retval) {
- if (retval == ENOMEM)
- return EXT2_ET_NO_MEMORY;
- return retval;
---