[Box Backup-commit] [boxbackup/boxbackup] a6f949: Enable compiler error on classes with non-virtual ...

GitHub noreply at github.com
Sun Nov 1 00:00:36 GMT 2015


  Branch: refs/heads/s3_support_merge
  Home:   https://github.com/boxbackup/boxbackup
  Commit: a6f949f13d7708167cd848c759f0de4f8c19a346
      https://github.com/boxbackup/boxbackup/commit/a6f949f13d7708167cd848c759f0de4f8c19a346
  Author: Chris Wilson <chris+github at qwirx.com>
  Date:   2015-10-31 (Sat, 31 Oct 2015)

  Changed paths:
    A infrastructure/m4/ax_check_compile_flag.m4
    M infrastructure/m4/boxbackup_tests.m4
    M lib/backupstore/BackupAccountControl.h
    M lib/backupstore/BackupFileSystem.h
    M lib/backupstore/BackupStoreContext.h
    M lib/server/makeprotocol.pl.in

  Log Message:
  -----------
  Enable compiler error on classes with non-virtual destructors.

I found a serious problem where subclasses didn't clean up their resources
properly when destroyed, if they inherited from a parent class with a
non-virtual destructor. This caused BackupFileSystem's NamedLock not to be
released. This commit:

* fixes the error where it occurred;
* enables static checks for this error when compiled with GCC;
* promotes the resulting warnings to errors, to ensure that this problem
  cannot reoccur.




More information about the Boxbackup-commit mailing list