X-Git-Url: https://wimlib.net/git/?p=wimlib;a=blobdiff_plain;f=src%2Freparse.c;h=b097212a6738afd803a911553f112dcb2055667d;hp=446b6f9f3765fc74f1c89c5eca495338be9cc53f;hb=f5d26d6005ba759762bec8c7cd45a738e577a8a7;hpb=f2f293a1759c81e7bd5deb904c3909368f3feaa5;ds=sidebyside diff --git a/src/reparse.c b/src/reparse.c index 446b6f9f..b097212a 100644 --- a/src/reparse.c +++ b/src/reparse.c @@ -45,6 +45,8 @@ #include #include +/* On-disk format of a symbolic link (WIM_IO_REPARSE_TAG_SYMLINK) or junction + * point (WIM_IO_REPARSE_TAG_MOUNT_POINT) reparse data buffer. */ struct reparse_buffer_disk { le32 rptag; le16 rpdatalen; @@ -184,7 +186,7 @@ parse_reparse_data(const u8 * restrict rpbuf, u16 rpbuflen, if (rpdata->rptag == WIM_IO_REPARSE_TAG_SYMLINK) { if (rpbuflen < 20) goto out_invalid; - rpdata->rpflags = le16_to_cpu(rpbuf_disk->symlink.rpflags); + rpdata->rpflags = le32_to_cpu(rpbuf_disk->symlink.rpflags); data = rpbuf_disk->symlink.data; } else { data = rpbuf_disk->junction.data;