diff --git a/projects/hfsplus-tools/build b/projects/hfsplus-tools/build index 91c14b36561cb326d5320e2ab28d1a5a0cbc3647..f66ec2956a3644e56070474b56ca935138c587c9 100644 --- a/projects/hfsplus-tools/build +++ b/projects/hfsplus-tools/build @@ -11,6 +11,7 @@ tar -xf diskdev_cmds-[% c("version") %].tar.gz cd diskdev_cmds-[% c("version") %] patch -p1 < $rootdir/newfs_hfs.diff +patch -p1 < $rootdir/ignore-timezone.diff make -j[% c("num_procs") %] diff --git a/projects/hfsplus-tools/config b/projects/hfsplus-tools/config index d81dab25ac526b971c12eb363fd95e349f114d1a..99fc56838ce8d1ccf3d730a957bf8555a6db02f5 100644 --- a/projects/hfsplus-tools/config +++ b/projects/hfsplus-tools/config @@ -21,3 +21,6 @@ input_files: # exist on Linux (at that path) and is not required on Linux either, and make # the UUID deterministic. - filename: newfs_hfs.diff + # Remove UTCToLocal conversion to avoid a different result when hwclock + # is set to local time or utc time (tor-browser-build#40844) + - filename: ignore-timezone.diff diff --git a/projects/hfsplus-tools/ignore-timezone.diff b/projects/hfsplus-tools/ignore-timezone.diff new file mode 100644 index 0000000000000000000000000000000000000000..37a08372acd04440c046ce5123d119926a0e9b99 --- /dev/null +++ b/projects/hfsplus-tools/ignore-timezone.diff @@ -0,0 +1,13 @@ +diff -ru diskdev_cmds-540.1.linux3/newfs_hfs.tproj/makehfs.c diskdev_cmds-540.1.linux3.n/newfs_hfs.tproj/makehfs.c +--- diskdev_cmds-540.1.linux3/newfs_hfs.tproj/makehfs.c 2012-02-02 23:36:59.000000000 +0100 ++++ diskdev_cmds-540.1.linux3.n/newfs_hfs.tproj/makehfs.c 2023-04-17 13:59:41.993000000 +0200 +@@ -463,8 +463,7 @@ + } + hp->lastMountedVersion = kHFSPlusMountVersion; + +- /* NOTE: create date is in local time, not GMT! */ +- hp->createDate = UTCToLocal(defaults->createDate); ++ hp->createDate = defaults->createDate; + hp->modifyDate = defaults->createDate; + hp->backupDate = 0; + hp->checkedDate = defaults->createDate; diff --git a/tools/signing/gatekeeper-bundling.sh b/tools/signing/gatekeeper-bundling.sh index 417610671c1c09e395b433a523c37d830f7126c9..49e36a596c14d67c8dfa85c3072077c105d50402 100755 --- a/tools/signing/gatekeeper-bundling.sh +++ b/tools/signing/gatekeeper-bundling.sh @@ -45,7 +45,7 @@ test -f "$libdmg_file" || \ "You can build it with:" \ " ./rbm/rbm build --target no_containers libdmg-hfsplus" \ "See var/deps in projects/libdmg-hfsplus/config for the list of build dependencies" -hfstools_file="$script_dir/../../out/hfsplus-tools/hfsplus-tools-540.1.linux3-66de66.tar.gz" +hfstools_file="$script_dir/../../out/hfsplus-tools/hfsplus-tools-540.1.linux3-81ff5b.tar.gz" test -f "$hfstools_file" || \ exit_error "$hfstools_file is missing." \ "You can build it with:" \