[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Critical bytecode bug with hash tables while dumping emacs.
From: |
Vibhav Pant |
Subject: |
Critical bytecode bug with hash tables while dumping emacs. |
Date: |
Thu, 26 Jan 2017 18:33:33 +0530 |
While, working on `byte-switch`, I discovered a critical bug when a
hash table is present in the constant vector of a bytecode function.
If such a function is called when temacs dumps a binary during the
biuld process, all keys and their corresponding values change to that
of a different hash table. The following patch demonstrates this by
testing the value of 'foo` in a table mapping 'foo to 'bar, and
erroring out if the test fails. This causes temacs to error out,
failing the build.
Since the current elisp codebase, doesn't use printed representation
anywhere to represent hash tables, this bug doesn't come up. However,
this may fail builds in the future, if future code does that.
--
Vibhav Pant
address@hidden
wrong-hash-table.patch
Description: Text Data
- Critical bytecode bug with hash tables while dumping emacs.,
Vibhav Pant <=