Wednesday, March 23, 2011

NeoOffice / OpenOffice "Error saving the document " -- Can't save file!

You've been working on your document, maybe go away for a while, come back and realize you haven't saved it.  But when you try to save,
an error dialog comes up saying "Write Error", with no additional information...

You try changing the file name, saving to a different directory, checking disk space..  everything looks fine, but it won't save.  What to do?  Quit it, and have faith that the 'Recover files' dialog will bring it back?
Copy your document, or at least the changes (f you can), into textedit or another program?

To encounter this situation is disconcerting, to say the least.

After a little searching,
NeoOffice bug #;bugid=3293<br>

Easy solution:
from the existing document,
select all and copy
cmd-N (or on windows: ctrl-N) to make a new window.
paste -- you now have a copy of your document.
Save this new one.

For me, these errors happened after starting NeoOffice a few days ago (12) and then deciding to save some 'untitled' documents I had created and entered minor amounts of data/text into. &nbsp;They hadn't been saved previously, and had been opened for several days. &nbsp;The bug says this:

"The key thing to do to avoid this bug is to not keep and .od* document
open for more than a day or two. If you periodically save a file, close
it, and reopen it, you can avoid this bug."

Another note is "Update: in this instance, with Writer giving the error, I was able to Save As in ANY format EXCEPT .sxw, .stw, .odt, and .ott."

Another link mentions something about tmp files, which on the mac seem to be somewhere under a path like&nbsp;
$ set | grep /var/folder
some OS cleanup process could be removing files from here. &nbsp;
I've not tried tracing the process&nbsp;(ptrace/strace)&nbsp;since I have a workaround, but it seems plausible enough.

apparently this has been going onsince 2006:<br>

1 comment:

nobody said...

I recently got this write error in The copy / paste method would have changed too many things (some fonts changed).

What seems to have happened is that there is a file in /tmp (I'm on Linux) that OO insists exists. I found which one by using: strace -p -e access

Then trying to save the file revealed which /tmp file was missing when the access() attempt failed. My RHEL5 distro will clean up older files in /tmp. A quick touch of the missing file then allowed the write to succeed.