[Dune] [#1066] fmatrix_assigner (dune/common/fassign.hh) not exception safe

Dune flyspray at dune-project.org
Thu Apr 12 15:47:36 CEST 2012


THIS IS AN AUTOMATED MESSAGE, DO NOT REPLY.

A new Flyspray task has been opened.  Details are below. 

User who did this - Markus Blatt (mblatt) 

Attached to Project - Dune
Summary - fmatrix_assigner (dune/common/fassign.hh) not exception safe
Task Type - Bug Report
Category - Dune Core Modules
Status - New
Assigned To - Markus Blatt
Operating System - Unspecified / All
Severity - Low
Priority - Normal
Reported Version - SVN (pre2.2)
Due in Version - Undecided
Due Date - Undecided
Details - The current inplementation of the fmatrix_assigner is not exception safe, e.g. in the testcase dune/common/test/testfassign_fail3 an expception is thrown in endrow() and afterwards the destructor of fmatrix_asigner is called during
stack unwinding, which throws another exception resulting in aborting the program.

We (Joe and I) propose the following changes:

1. Remove the checks in the destructor such that it never throws.
2. Change the semantics of assign expression. Namely introduce a marker for the end of the input (e.g. endmatrix in
    concordance to endrow)
3. Implement the checks, that were previuously made in the destructor, in a new method that is called when endmatrix is passed.

Thus endmatrix is optional. If it is used all the previous checks will be performed. If not, the last row is not checked.

Objections, suggestions?

More information can be found at the following URL:
http://www.dune-project.org/flyspray/index.php?do=details&task_id=1066

You are receiving this message because you have requested it from the Flyspray bugtracking system.  If you did not expect this message or don't want to receive mails in future, you can change your notification settings at the URL shown above.




More information about the Dune mailing list