Vector Serialization Bug in Boost 1.58
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
boost (Ubuntu) |
Confirmed
|
Undecided
|
Unassigned |
Bug Description
Ubuntu Release: xenial
Source Package: boost1.58
While testing for a pending project upgrade to xenial, I encountered a problem with boost's serialization (specifically deserialization) of std::vector whereby repeatedly deserializing into a single instance of std::vector would accumulate entries in that vector instead of having them replaced.
Others have encountered this bug as well:
http://
According to boost's tracker, this bug is unique to version 1.58, and fixed at >= 1.59:
https:/
After reviewing the diffs between 1.54 (previous working version from trusty), 1.58 (xenial target), and 1.60 (pulled from yakkety for examination), I believe this can be addressed by a one-line patch, which I have attached, reintroducing a call to vector::clear() at the appropriate juncture: I have attached that patch, which may be appended to the quilt series embedded in the current xenial source package for boost1.58, and have verified that, at least for all of my usages, this fixes the problem.
Given the reaction to the ticket ("Fixed in 1.59, invalid bug"), this seems to be an excellent candidate for inclusion as a bugfix/backport for xenial.
Let me know if there is anything else you need. I created the patch against the boost1.58 package sources with 'dpkg-source --commit', but I admit I deleted most of the "fill in this important information" because I did not yet have a launchpad bug, etc. to reference.
The attachment "fixes the problem" seems to be a patch. If it isn't, please remove the "patch" flag from the attachment, remove the "patch" tag, and if you are a member of the ~ubuntu-reviewers, unsubscribe the team.
[This is an automated message performed by a Launchpad user owned by ~brian-murray, for any issues please contact him.]