incubator-ooo-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Ariel Constenla-Haile <arie...@apache.org>
Subject Re: [AUTOSAVE] Where is
Date Sat, 26 May 2012 04:54:16 GMT
Hi Kayo,

On Fri, May 25, 2012 at 11:59:48PM -0400, Kayo Hamid wrote:
> Hello, i'm having problems with autosave and want to see around the
> code, where is the implementation?
> 
> ooo/trunk/main/framework/qa/complex/framework/autosave ?

Everything in $MODULE/qa is just QA test.

Are you looking for the code related to "Tools" - "Options..."
- "Load/Save" - "Always create backup copy" or "Save AutoRecovery
  information every..."? These are to related, though different things.

The easiest I can imagine is:
- build sfx2 and framework with debugging symbols
- open a Writer document
- attach the debugger
- set a break point on SfxObjectShell::SaveTo_Impl

(gdb) break SfxObjectShell::SaveTo_Impl
Breakpoint 1 at 0x7fbe9f3f2c0f: file /build/aoo/trunk/main/sfx2/source/doc/objstor.cxx, line
1142.
(gdb) c
Continuing.


modify the document, and when it tries to autosave itself, you'll get:


Breakpoint 1, SfxObjectShell::SaveTo_Impl (this=0x2a52b08, rMedium=..., pSet=0x0) at /build/aoo/trunk/main/sfx2/source/doc/objstor.cxx:1142
1142        RTL_LOGFILE_PRODUCT_CONTEXT( aLog, "PERFORMANCE SfxObjectShell::SaveTo_Impl" );
(gdb) bt
#0  SfxObjectShell::SaveTo_Impl (this=0x2a52b08, rMedium=..., pSet=0x0) at /build/aoo/trunk/main/sfx2/source/doc/objstor.cxx:1142
#1  0x00007fbe9f3fc087 in SfxObjectShell::PreDoSaveAs_Impl (this=0x2a52b08, rFileName=...,
aFilterName=..., pParams=0x32f06d8)
    at /build/aoo/trunk/main/sfx2/source/doc/objstor.cxx:2967
#2  0x00007fbe9f3fb633 in SfxObjectShell::CommonSaveAs_Impl (this=0x2a52b08, aURL=..., aFilterName=...,
aParams=0x33323a8)
    at /build/aoo/trunk/main/sfx2/source/doc/objstor.cxx:2821
#3  0x00007fbe9f3e6587 in SfxObjectShell::APISaveAs_Impl (this=0x2a52b08, aFileName=..., aParams=0x33323a8)
    at /build/aoo/trunk/main/sfx2/source/doc/objserv.cxx:339
#4  0x00007fbe9f437409 in SfxBaseModel::impl_store (this=0x2880cc0, sURL=..., seqArguments=...,
bSaveTo=1 '\001')
    at /build/aoo/trunk/main/sfx2/source/doc/sfxbasemodel.cxx:2910
#5  0x00007fbe9f430ed7 in SfxBaseModel::storeToRecoveryFile (this=0x2880cc0, i_TargetLocation=...,
i_MediaDescriptor=...)
    at /build/aoo/trunk/main/sfx2/source/doc/sfxbasemodel.cxx:1759
#6  0x00007fbe8c3d309b in framework::AutoRecovery::implts_saveOneDoc (this=0x2074320, sBackupPath=...,
rInfo=..., xExternalProgress=...)
    at /build/aoo/trunk/main/framework/source/services/autorecovery.cxx:2449
#7  0x00007fbe8c3d28d4 in framework::AutoRecovery::implts_saveDocs (this=0x2074320, bAllowUserIdleLoop=1
'\001', bRemoveLockFiles=0 '\000', pParams=0x0)
    at /build/aoo/trunk/main/framework/source/services/autorecovery.cxx:2364
#8  0x00007fbe8c3d0004 in framework::AutoRecovery::implts_timerExpired (this=0x2074320) at
/build/aoo/trunk/main/framework/source/services/autorecovery.cxx:1683
#9  0x00007fbe8c3cfe13 in framework::AutoRecovery::LinkStubimplts_timerExpired (pThis=0x2074320,
pCaller=0x2074448)
    at /build/aoo/trunk/main/framework/source/services/autorecovery.cxx:1618
#10 0x00007fbe9caee978 in Link::Call (this=0x2074468, pCaller=0x2074448) at /build/aoo/trunk/main/solver/340/unxlngx6/inc/tools/link.hxx:135
#11 0x00007fbe9cb0700d in Timer::Timeout (this=0x2074448) at /build/aoo/trunk/main/vcl/source/app/timer.cxx:253
#12 0x00007fbe9cb06c76 in Timer::ImplTimerCallbackProc () at /build/aoo/trunk/main/vcl/source/app/timer.cxx:141
#13 0x00007fbe918cc613 in SalTimer::CallCallback (this=0x1fe25f8) at /build/aoo/trunk/main/vcl/inc/saltimer.hxx:61
#14 0x00007fbe918cc3a6 in X11SalData::Timeout (this=0x12bafa8) at /build/aoo/trunk/main/vcl/unx/generic/app/saltimer.cxx:45
#15 0x00007fbe91c2dd80 in GtkXLib::timeoutFn (data=0x12bed68) at /build/aoo/trunk/main/vcl/unx/gtk/app/gtkdata.cxx:745
#16 0x00007fbe91c2dcd4 in call_timeoutFn (data=0x12bed68) at /build/aoo/trunk/main/vcl/unx/gtk/app/gtkdata.cxx:725
#17 0x0000003157e4672b in ?? () from /lib64/libglib-2.0.so.0
#18 0x0000003157e44f3d in g_main_context_dispatch () from /lib64/libglib-2.0.so.0
#19 0x0000003157e45738 in ?? () from /lib64/libglib-2.0.so.0
#20 0x0000003157e4590c in g_main_context_iteration () from /lib64/libglib-2.0.so.0
#21 0x00007fbe91c2e202 in GtkXLib::Yield (this=0x12bed68, bWait=true, bHandleAllCurrentEvents=false)
at /build/aoo/trunk/main/vcl/unx/gtk/app/gtkdata.cxx:874
#22 0x00007fbe918c924f in X11SalInstance::Yield (this=0x12bae78, bWait=true, bHandleAllCurrentEvents=false)
    at /build/aoo/trunk/main/vcl/unx/generic/app/salinst.cxx:278
#23 0x00007fbe9caff637 in ImplYield (i_bWait=true, i_bAllEvents=false) at /build/aoo/trunk/main/vcl/source/app/svapp.cxx:472
#24 0x00007fbe9cafb7ed in Application::Yield (i_bAllEvents=false) at /build/aoo/trunk/main/vcl/source/app/svapp.cxx:506
#25 0x00007fbe9cafb789 in Application::Execute () at /build/aoo/trunk/main/vcl/source/app/svapp.cxx:449
#26 0x00007fbea0a2b44d in desktop::Desktop::Main (this=0x7fff3c37b550) at /build/aoo/trunk/main/desktop/source/app/app.cxx:2159
#27 0x00007fbe9cb0501e in ImplSVMain () at /build/aoo/trunk/main/vcl/source/app/svmain.cxx:193
#28 0x00007fbe9cb05163 in SVMain () at /build/aoo/trunk/main/vcl/source/app/svmain.cxx:230
#29 0x00007fbea0a5f7ff in soffice_main () at /build/aoo/trunk/main/desktop/source/app/sofficemain.cxx:45
#30 0x00000000004011f4 in sal_main () at main.c:31
#31 0x00000000004011d9 in main (argc=1, argv=0x7fff3c37b708) at main.c:30
(gdb)

This is a good starting point to investigate.

Regards
-- 
Ariel Constenla-Haile
La Plata, Argentina

Mime
View raw message