diff options
author | Miklos Vajna <vmiklos@collabora.co.uk> | 2018-01-10 11:39:21 +0100 |
---|---|---|
committer | Miklos Vajna <vmiklos@collabora.co.uk> | 2018-07-16 16:55:53 +0200 |
commit | 27d0abe7eca73722980228520f3a3ccdf3f844a3 (patch) | |
tree | 430b2775a949d17fb444a89ca830f946a442bc25 /include | |
parent | 64804142904cbb2df38138b0c53b4a5790104814 (diff) |
sfx2 store: add API to allow avoiding the fsync of the output file
The use-case is when the consumer of the output file will read it right
after SfxBaseModel::storeToURL() returns, in which case an expensive
fsync is pointless.
Times for 100 hello world inputs: 8516 -> 2785 ms is spent in ODT-load + HTML
export + close (33% of original).
Change-Id: I05e424a43ebfeea363f82b57af60f5aaa28696b4
Reviewed-on: https://gerrit.libreoffice.org/47695
Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk>
Tested-by: Jenkins <ci@libreoffice.org>
(cherry picked from commit d03a754722980a4eaf14fce38d73ae23b604295b)
Diffstat (limited to 'include')
-rw-r--r-- | include/sfx2/docfile.hxx | 2 | ||||
-rw-r--r-- | include/sfx2/sfxsids.hrc | 3 |
2 files changed, 4 insertions, 1 deletions
diff --git a/include/sfx2/docfile.hxx b/include/sfx2/docfile.hxx index a2a66640529c..468e11dd2e7b 100644 --- a/include/sfx2/docfile.hxx +++ b/include/sfx2/docfile.hxx @@ -171,6 +171,8 @@ public: LockFileResult LockOrigFileOnDemand( bool bLoading, bool bNoUI, bool bTryIgnoreLockFile = false ); void DisableUnlockWebDAV( bool bDisableUnlockWebDAV = true ); void UnlockFile( bool bReleaseLockStream ); + /// Lets Transfer_Impl() not fsync the output file. + void DisableFileSync(bool bDisableFileSync); css::uno::Reference< css::embed::XStorage > GetStorage( bool bCreateTempIfNo = true ); css::uno::Reference< css::embed::XStorage > GetOutputStorage(); diff --git a/include/sfx2/sfxsids.hrc b/include/sfx2/sfxsids.hrc index 7bac74572f8f..e4c757ae756a 100644 --- a/include/sfx2/sfxsids.hrc +++ b/include/sfx2/sfxsids.hrc @@ -243,8 +243,9 @@ #define SID_BLUETOOTH_SENDDOC (SID_SFX_START + 1726) #define SID_TEMPLATE_MANAGER (SID_SFX_START + 1727) #define SID_TOOLBAR_MODE (SID_SFX_START + 1728) +#define SID_NO_FILE_SYNC (SID_SFX_START + 1729) -// SID_SFX_free_START (SID_SFX_START + 1729) +// SID_SFX_free_START (SID_SFX_START + 1730) // SID_SFX_free_END (SID_SFX_START + 3999) #define SID_OPEN_NEW_VIEW (SID_SFX_START + 520) |