On 10/07/2016 9:41 am, "Jeffrey Walton" <[email protected]> wrote:
>
> This does not quite look right, either:
>
>     auto snf = new SignatureVerificationFilter(...);
>     ...
>     StringSource source2(compressed_data, true, new Gunzip(snf));
>
> The Gunzip object deletes the attached Verifier when the Gunzip
destructor runs. 'snf' is not a valid object after that.

That shouldn't matter; the Gunzip should not be destroyed until the source
it is attached to is, which is after the verifier is used.  It doesn't need
to stick around any longer than that, and indeed I *want* snf to be
destroyed then.

If somehow the Gunzip does get destroyed before the source it's attached to
(admittedly I didn't check explicitly) then the whole pipeline architecture
is broken.

But you're getting side-tracked.  As I said before, if you remove the
assert and add the THROW_EXCEPTION flag to snf, then it will throw on Linux
but not on Windows.  There's definitely no accesses outside of the pipeline
itself in that case.

-- 
-- 
You received this message because you are subscribed to the "Crypto++ Users" 
Google Group.
To unsubscribe, send an email to [email protected].
More information about Crypto++ and this group is available at 
http://www.cryptopp.com.
--- 
You received this message because you are subscribed to the Google Groups 
"Crypto++ Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to