#10149: The argument of mask does not always restore the masking state -------------------------------------+------------------------------------- Reporter: | Owner: facundo.dominguez | facundo.dominguez Type: bug | Status: patch Priority: normal | Milestone: Component: libraries/base | Version: 7.11 Resolution: | Keywords: Operating System: Unknown/Multiple | Architecture: | Unknown/Multiple Type of failure: None/Unknown | Test Case: Blocked By: | Blocking: Related Tickets: | Differential Rev(s): Phab:D1327 Wiki Page: | -------------------------------------+------------------------------------- Comment (by Ben Gamari <ben@…>): In [changeset:"2b25a589ae8f6364bf086b4878f5ec26954931d3/ghc" 2b25a58/ghc]: {{{ #!CommitTicketReference repository="ghc" revision="2b25a589ae8f6364bf086b4878f5ec26954931d3" base: Have the argument of mask restore the state. The implementation of `mask` and `uninterruptibleMask` assumed so far that the restore argument would be called in a context with the same masking state as that set by `mask` or `uninterruptibleMask`. This patch has the restore argument restore the masking, whatever the current masking state is. Test Plan: validate Reviewers: simonmar, hvr, austin, bgamari Reviewed By: bgamari Subscribers: thomie, qnikst Differential Revision: https://phabricator.haskell.org/D1327 GHC Trac Issues: #10149 }}} -- Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/10149#comment:6> GHC <http://www.haskell.org/ghc/> The Glasgow Haskell Compiler