1. 04 Kas, 2018 1 kayıt (commit)
  2. 01 Kas, 2018 1 kayıt (commit)
  3. 13 Eki, 2018 1 kayıt (commit)
  4. 12 Eki, 2018 1 kayıt (commit)
  5. 24 Eyl, 2018 1 kayıt (commit)
  6. 17 Eyl, 2018 1 kayıt (commit)
    • Stephan Bergmann's avatar
      New loplugin:external · 206b5b26
      Stephan Bergmann yazdı
      ...warning about (for now only) functions and variables with external linkage
      that likely don't need it.
      
      The problems with moving entities into unnamed namespacs and breaking ADL
      (as alluded to in comments in compilerplugins/clang/external.cxx) are
      illustrated by the fact that while
      
        struct S1 { int f() { return 0; } };
        int f(S1 s) { return s.f(); }
        namespace N {
          struct S2: S1 { int f() { return 1; } };
          int f(S2 s) { return s.f(); }
        }
        int main() { return f(N::S2()); }
      
      returns 1, both moving just the struct S2 into an nunnamed namespace,
      
        struct S1 { int f() { return 0; } };
        int f(S1 s) { return s.f(); }
        namespace N {
          namespace { struct S2: S1 { int f() { return 1; } }; }
          int f(S2 s) { return s.f(); }
        }
        int main() { return f(N::S2()); }
      
      as well as moving just the function f overload into an unnamed namespace,
      
        struct S1 { int f() { return 0; } };
        int f(S1 s) { return s.f(); }
        namespace N {
          struct S2: S1 { int f() { return 1; } };
          namespace { int f(S2 s) { return s.f(); } }
        }
        int main() { return f(N::S2()); }
      
      would each change the program to return 0 instead.
      
      Change-Id: I4d09f7ac5e8f9bcd6e6bde4712608444b642265c
      Reviewed-on: https://gerrit.libreoffice.org/60539
      Tested-by: Jenkins
      Reviewed-by: 's avatarStephan Bergmann <sbergman@redhat.com>
      206b5b26
  7. 07 Eyl, 2018 1 kayıt (commit)
    • Stephan Bergmann's avatar
      DeInitVCL in PythonTest · e7a3329f
      Stephan Bergmann yazdı
      After b9757f5c "loplugin:useuniqueptr in
      vcl/svdata" ASan/UBSan builds started to fail (like
      <https://ci.libreoffice.org//job/lo_ubsan/1025/>) at the end of
      PythonTest_dbaccess_python (and probably other PythonTests), when during exit
      the static utl::ConfigManager instance already happens to be destroyed by the
      time the static ImplSVData's mpSettingsConfigItem is destroyed (which would
      normally be cleared during DeInitVCL, if PythonTests would call that, and which
      in the past had thus simply been leaked in PythonTests when that
      mpSettingsConfigItem was a plain pointer instead of std::unique_ptr).
      
      So ensure that PythonTests that initialize VCL also call DeInitVCL, via a new
      private_deinitTestEnvironment, complementing the existing
      private_initTestEnvironment.
      
      However, while private_initTestEnvironment is called once (typically via
      UnoInProcess.setUp, which internally makes sure to only call it once) as soon as
      the first executed test needs it, private_deinitTestEnvironment must be called
      once after the lasts test needing it has executed.  The only way that I found to
      do that is to override unittest.TextTestResult's stopTestRun method, which is
      called once after all tests have been executed.  Hence a new test runner setup
      in unotest/source/python/org/libreoffice/unittest.py that is now called from
      solenv/gbuild/PythonTest.mk.
      
      That revealed a few places in PythonTests that didn't yet close/delete documents
      that they had opened, which has now been added.
      
      One remaining problem then is that classes like SwXTextDocument and friends call
      Application::GetSolarMutex from their dtors, via sw::UnoImplPtrDeleter (a "Smart
      pointer class ensuring that the pointed object is deleted with a locked
      SolarMutex", sw/inc/unobaseclass.hxx).  That means that any PyUNO proxies to
      such C++ objects that remain alive after private_deinitTestEnvironment will
      cause issues at exit, when Python does a final garbage collection of those
      objects.  The ultimate fix will be to remove that unhelpful UnoImplPtrDeleter
      and its locking of SolarMutex from the dtors of UNO objects; until then, the
      Python code is now sprinkled with some HACKs to make sure all those PyUNO
      proxies are released in a timely fashion (see the comment in
      unotest/source/python/org/libreoffice/unittest.py for details).  (Also, it would
      probably help if UnoInProcess didn't keep a local self.xDoc around referencing
      (just) the last result of calling one of its open* methods, confusingly making
      it the responsibility of UnoInProcess to close that one document while making it
      the responsibility of the test code making the other UnoInProcess.open* calls to
      close any other documents.)
      
      Change-Id: Ief27c81e2b763e9be20cbf3234b68924315f13be
      Reviewed-on: https://gerrit.libreoffice.org/60100
      Tested-by: Jenkins
      Reviewed-by: 's avatarStephan Bergmann <sbergman@redhat.com>
      e7a3329f
  8. 30 Tem, 2018 1 kayıt (commit)
    • Gabor Kelemen's avatar
      Add missing sal/log.hxx headers · c6e5d551
      Gabor Kelemen yazdı
      rtl/string.hxx and rtl/ustring.hxx both unnecessarily #include <sal/log.hxx> (and don't make use of it themselves), but many other files happen to depend on it.
      This is a continuation of commit 6ff2d84a to be able to remove those unneeded includes.
      
      This commit adds missing headers to every file found by:
      grep -FwL sal/log.hxx $(git grep -Elw 'SAL_INFO|SAL_INFO_IF|SAL_WARN|SAL_WARN_IF|SAL_DETAIL_LOG_STREAM|SAL_WHERE|SAL_STREAM|SAL_DEBUG')
      to directories from l10ntools to reportdesign
      
      Change-Id: Ia2dc93dd848c2dc0b6a8cb6e19849c614ec55198
      Reviewed-on: https://gerrit.libreoffice.org/58205
      Tested-by: Jenkins
      Reviewed-by: 's avatarMiklos Vajna <vmiklos@collabora.co.uk>
      c6e5d551
  9. 26 Tem, 2018 1 kayıt (commit)
  10. 03 Tem, 2018 1 kayıt (commit)
  11. 23 Haz, 2018 1 kayıt (commit)
  12. 07 Haz, 2018 1 kayıt (commit)
  13. 25 May, 2018 1 kayıt (commit)
  14. 09 Nis, 2018 1 kayıt (commit)
  15. 05 Nis, 2018 1 kayıt (commit)
  16. 03 Nis, 2018 1 kayıt (commit)
  17. 12 Mar, 2018 1 kayıt (commit)
  18. 02 Şub, 2018 1 kayıt (commit)
  19. 01 Şub, 2018 1 kayıt (commit)
    • Michael Stahl's avatar
      tdf#114815 pyuno: avoid 2 threads initing python in parallel · 5357ca82
      Michael Stahl yazdı
      According to the crash reports, it's possible for the grammar checking
      thread to call GetGrammarChecker, instantiating lightproof, at the same
      time as the main thread instantiates LngSvcMgr, which also instantiates
      (some?) (all?) grammar checkers.
      
      Ensure that pyuno_loader::CreateInstance() initialises Python only
      once with a C++11 thread safe static.
      
      Change-Id: I5b1faba9107355c508831a078366e4a29fdbfadf
      5357ca82
  20. 15 Ock, 2018 1 kayıt (commit)
  21. 12 Ock, 2018 1 kayıt (commit)
  22. 11 Ock, 2018 1 kayıt (commit)
    • Stephan Bergmann's avatar
      loplugin:redundantcast: pyuno · 96d6ccb2
      Stephan Bergmann yazdı
      (after a to-be-committed improved loplugin:cstylecast would have rewritten the
      C-style casts into static_casts)
      
      Change-Id: If46940b66accb95d82ce9f129b274940086d906e
      96d6ccb2
  23. 11 Ara, 2017 1 kayıt (commit)
  24. 07 Ara, 2017 1 kayıt (commit)
  25. 23 Kas, 2017 1 kayıt (commit)
  26. 04 Kas, 2017 1 kayıt (commit)
  27. 27 Eki, 2017 1 kayıt (commit)
  28. 23 Eki, 2017 2 kayıt (commit)
  29. 04 Eki, 2017 1 kayıt (commit)
  30. 03 Eki, 2017 1 kayıt (commit)
  31. 30 Eyl, 2017 1 kayıt (commit)
  32. 27 Eyl, 2017 1 kayıt (commit)
  33. 26 Eyl, 2017 1 kayıt (commit)
    • Stephan Bergmann's avatar
      Call pyuno.private_initTestEnvironment() only once · 4bf3b4ee
      Stephan Bergmann yazdı
      ...instead of once for each class derived from CollectionsTestBase (as listed in
      pyuno/PythonTest_pyuno_pytests_testcollections.mk), causing the
      
        assert(!pSVData->maDeInitHook.IsSet());
      
      in Application::setDeInitHook (vcl/source/app/svapp.cxx) to fire.
      
      This is probably far from being idiomatic Python code...
      
      Change-Id: I8cd1470c085b16b7b82468a308cfd1dead2db034
      4bf3b4ee
  34. 25 Eyl, 2017 1 kayıt (commit)
  35. 22 Eyl, 2017 1 kayıt (commit)
  36. 17 Agu, 2017 1 kayıt (commit)
  37. 31 Tem, 2017 1 kayıt (commit)
  38. 21 Tem, 2017 1 kayıt (commit)
  39. 31 May, 2017 1 kayıt (commit)