- Apr 13, 2021
-
-
Arne Goedeke authored
This commit fixes a situation in which, when an error happens while decoding the content of a multiset, a temporary array would leak. Thanks to Joshua Rogers <jrogers@opera.com> for the report.
-
Arne Goedeke authored
This commit fixes a use-after-free when a delay encoded tag overrides the container being decoded right now. Thanks to Joshua Rogers <jrogers@opera.com> for the report.
-
- Jul 19, 2019
-
-
Henrik (Grubba) Grubbström authored
A stray number was added to the identifier reference table. This caused the decoder to become confused. Fixes dumping errors for Web.SocketIO.
-
- Oct 21, 2016
-
-
Henrik (Grubba) Grubbström authored
The mapping with encoded values is intentionally allocated with medium sized hashtable. Shrinking it due to use of map_delete() is just a waste of cpu. Attempts to improve performance of encode_value() for objects, programs and functions a bit more.
-
- Oct 21, 2015
-
-
Henrik (Grubba) Grubbström authored
The argument order was swapped in an error callback.
-
- Oct 14, 2015
-
-
Henrik (Grubba) Grubbström authored
The variant dispatcher often replaces the reference id to the terminating function, which instead gets the reference id that the variant dispatcher would have gotten otherwise. This fixes broken encoding where the terminating function's reference id was taken by the next function that was encoded, which in turn caused decode_value() to fail with "Bad function identifier offset".
-
- Oct 12, 2015
-
-
Henrik (Grubba) Grubbström authored
The decoder state wasn't freed on exit if the decoder tables contained unfinished programs when compiled --with-debug.
-
- Jul 23, 2015
-
-
Jonas Walldn authored
deprecated on OS X.
-
- Mar 04, 2015
-
-
Per Hedbor authored
Also, do not remember items with only 1 reference, they are rather unlikely to show up again later on (objects notwithstanding, and they are handled in another case). This saves a lot of CPU time when a large array of fairly unique strings are encoded.
-
- Nov 24, 2014
-
-
Per Hedbor authored
This version is about 200 times faster.
-
- Nov 05, 2014
-
-
Martin Nilsson authored
-
- Oct 03, 2014
-
-
Jonas Walldn authored
-
- Sep 03, 2014
-
-
Martin Nilsson authored
-
Martin Nilsson authored
-
Martin Nilsson authored
-
Martin Nilsson authored
-
Henrik (Grubba) Grubbström authored
Removed special case code in two places that compensated for each other.
-
- Aug 22, 2014
-
-
Martin Nilsson authored
-
- Aug 20, 2014
-
-
Henrik (Grubba) Grubbström authored
Variant functions weren't dumped correctly if they were overloading inherited non-variant functions. Fixes remaining issue with the dumping of Crypto.RSA.State.
-
Henrik (Grubba) Grubbström authored
The variant dispatcher is a CFUN that may show up in pure Pike programs, so don't fallback to the C-program encodings when the only CFUN is the variant dispatcher. Potentially fixes dumping problems with Crypto.RSA.State (where generate_key() is a variant function).
-
Henrik (Grubba) Grubbström authored
The macros getdata() and getdata3() are no more.
-
- Aug 18, 2014
-
-
Martin Nilsson authored
-
- Jun 19, 2014
-
-
Per Hedbor authored
-
- May 27, 2014
-
-
Martin Nilsson authored
-
- May 26, 2014
-
-
Per Hedbor authored
Try to force noinline on the decode_error function.
-
- May 23, 2014
-
-
Arne Goedeke authored
Old style encoding was not used since about 10 years. Removing it saves about 12 kB in decode_value2 with -Os.
-
- May 22, 2014
-
-
Per Hedbor authored
Especially in error handling, and code that does a lot of other string operations anyway the speed gain is not wort the 100+ bytes code size of each instance of push_constant_text This saves about 20K of code size (main pike binary), while not really changing the speed much. push_constant_text that seemed to be in at least pseudo-time-critical code was kept as they were. On a related note, push_constant_text(":") four times in a row creates four different string variables, for obvious reasons. Some of the remaining push_constant_text really should have a module/file local string variable, even though that is more bothersome to create. It might be nice to have this in .cmod files automatically.
-
- Apr 28, 2014
-
-
Henrik (Grubba) Grubbström authored
The Pike compiler now uses a dedicated reentrant lock instead of the brute-force approach of using threads_disable(). This should improve concurrency with other threads.
-
- Apr 27, 2014
-
-
Martin Nilsson authored
-
Martin Nilsson authored
-
- Apr 15, 2014
-
-
Arne Goedeke authored
-
- Mar 19, 2014
-
-
Arne Goedeke authored
This happens in certain programs (e.g. __builtin.*Error and some Nettle hash states) where low_inherit is called with name == NULL.
-
- Mar 17, 2014
-
-
Henrik (Grubba) Grubbström authored
The test looked at limits for the wrong program (the refno relates to the program at depth depth). Revert it for now as it breaks working code. This reverts commit c88883e0.
-
- Mar 16, 2014
-
-
Arne Goedeke authored
-
Arne Goedeke authored
-
- Mar 12, 2014
-
-
Martin Nilsson authored
-
Arne Goedeke authored
-
Arne Goedeke authored
-
- Jan 12, 2014
-
-
Tobias S. Josefowitz authored
-
Tobias S. Josefowitz authored
-