Skip to content
  1. Apr 01, 2020
    • Vitor K's avatar
      common: Port some changes from dolphin (#5127) · bd0c56c6
      Vitor K authored
      
      
      * IOFile: Make the move constructor and move assignment operator noexcept
      
      Certain parts of the standard library try to determine whether or not a
      transfer operation should either be a copy or a move. The prevalent notion
      of move constructors/assignment operators is that they should not throw,
      they simply move an already existing resource somewhere else.
      
      This is typically done with 'std::move_if_noexcept'. Like the name says,
      if a type's move constructor is noexcept, then the functions retrieves an
      r-value reference (for move semantics), or an l-value (for copy semantics)
      if it is not noexcept.
      
      As IOFile deletes the copy constructor and copy assignment operators,
      using IOFile with certain parts of the standard library can fail in
      unexcepted ways (especially when used with various container
      implementations). This prevents that.
      
      * fix various instances of -1 being assigned to unsigned types
      
      * do not assign in conditional statements
      
      * File/IOFile: Check _tfopen_s properly
      
      * common/file_util.cpp: address review comments
      
      Co-authored-by: default avatarLioncash <mathew1800@gmail.com>
      Co-authored-by: default avatarShawn Hoffman <godisgovernment@gmail.com>
      Co-authored-by: default avatarSepalani <sepalani@hotmail.fr>
      bd0c56c6
  2. Mar 27, 2020
  3. Mar 26, 2020
  4. Mar 25, 2020
  5. Mar 24, 2020
  6. Mar 23, 2020
  7. Mar 22, 2020
  8. Mar 21, 2020
  9. Mar 20, 2020
  10. Mar 19, 2020
  11. Mar 18, 2020
Loading