1
0
Fork 0
mirror of https://github.com/mozilla/pdf.js.git synced 2025-04-24 09:08:07 +02:00

Replace the AnnotationStorage.lastModified-getter with a proper hash-method

The current `lastModified`-getter, which only contains a time-stamp, is a fairly crude way of detecting if the stored data has actually been changed. In particular, when the `getRawValue`-method is used, the `lastModified`-getter doesn't cope with data being modified from the "outside".

To fix these issues[1], and to prevent any future bugs in this code, this patch introduces a new `AnnotationStorage.hash`-getter which computes a hash of the currently stored data. To simplify things this re-uses the existing `MurmurHash3_64`-implementation, which required moving that file into the `src/shared/`-folder, since its performance should be good enough here.

---
[1] Given how the `AnnotationStorage.lastModified`-getter was used, this would have been limited to *printing* of forms.
This commit is contained in:
Jonas Jenwald 2022-05-04 15:03:46 +02:00
parent 8135d7ccf6
commit 8267fd8a52
5 changed files with 14 additions and 10 deletions

View file

@ -13,7 +13,7 @@
* limitations under the License.
*/
import { MurmurHash3_64 } from "../../src/core/murmurhash3.js";
import { MurmurHash3_64 } from "../../src/shared/murmurhash3.js";
describe("MurmurHash3_64", function () {
it("instantiates without seed", function () {