mirror of
https://github.com/facebookincubator/mvfst.git
synced 2025-11-15 07:21:06 +03:00
Summary: Comparing (operator<) for default PriorityQueue::Priority vs HTTPPriorityQueue::Priority was not correctly using the default HTTP priority - instead it would interpret 0xffffffff as u=7, i=1, which is the lowest priority. Also constructing or assigning HTTPPriorityQueue::Priority from PriorityQueue::Priority was suboptimal. 1) Make order a uint32_t. From HTTPPriorityFunctions, it looks like we could only set this to a max of 2^31-1 anyways. 2) Add an 'uninitialized' bit to HTTPPriority. Since the default is 1 initialized in the base class, only fully initialized HTTPPriority will return true for `isInitializedFast` 3) Implement new constructor and assignment operator 4) Return a static default uint64 for uninitialized priority in `toUnit64`, this fixes `operator<` 5) Streamline `operator==` Reviewed By: hanidamlaj Differential Revision: D73685997 fbshipit-source-id: 5c6cd2404d6506f661aa29983c5ded3cf913758c
9.4 KiB
9.4 KiB