*
* Copyright (C) 1999-2004 by Erik Andersen <andersen@codepoet.org>
*
- * Licensed under GPLv2 or later, see file LICENSE in this tarball for details.
+ * Licensed under GPLv2 or later, see file LICENSE in this source tree.
*/
#include "libbb.h"
/* .gz and .bz2 both have 2-byte signature, and their
* unpack_XXX_stream wants this header skipped. */
- xread(fd, magic.b16, sizeof(magic.b16));
+ xread(fd, magic.b16, sizeof(magic.b16[0]));
if (ENABLE_FEATURE_SEAMLESS_GZ
&& magic.b16[0] == GZIP_MAGIC
) {
if (ENABLE_FEATURE_SEAMLESS_XZ
&& magic.b16[0] == XZ_MAGIC1
) {
- /* .xz signature: 0xfd, '7', 'z', 'X', 'Z', 0x00 */
- /* More info at: http://tukaani.org/xz/xz-file-format.txt */
offset = -6;
- xread(fd, magic.b32, sizeof(magic.b32));
+ xread(fd, magic.b32, sizeof(magic.b32[0]));
if (magic.b32[0] == XZ_MAGIC2) {
# if BB_MMU
xformer = unpack_xz_stream;
- /* unpack_xz_stream wants fd at position 0 */
- xlseek(fd, offset, SEEK_CUR);
+ /* unpack_xz_stream wants fd at position 6, no need to seek */
+ //xlseek(fd, offset, SEEK_CUR);
# else
xformer_prog = "unxz";
# endif