MacDraw II, MacDraw Pro: Opening/Recovering Corrupted Files

An explanation of recovering MacDraw II and MacDraw Pro files

This information was provided by Claris Corporation on 16 March 1998, and incorporated into Apple Computer's Tech Info Library.

First, eliminate other possible causes. Disable INITs, reinstall the application with INITs diabled, try opening a known good file, like one of the sample files, etc. If the behavior appears to be file specific, the following explains recovery possibilities and techniques.

What to do if you can get the file open.
If the computer crashes or displays a system error after you've successfully opened the file, it may be a corrupt object or layer. The solution is to eliminate it by trial and error. You might try hiding layer(s). If a corrupted layer is hidden, it is less likely to cause a system error. Once you have narrowed it down to a specific layer, try copying and pasting the objects to a new layer, then delete the corrupt layer. If this doesn't solve the situation, a group is corrupted. Try selecting all the objects on the layer and Ungrouping several times. If this doesn't solve the situation, an object may be corrupted. You'll have to determine the corrupted object by trial and error.

Note that if you've used a corrupted object or group in several files, which is common when using libraries, this may cause all these files to have difficulties. This can make it hard to determine if the behavior is file-related or application- or system-related.
Tip: You might also try saving out to PICT, then reopening the file. Note that this may cause some objects to be shifted or distorted, and objects on all layers will be placed on a single layer.

What to do if the file won't open.
Is the file recovered with file recovery software?
If a file is recovered or unerased using recovery software and it won't open, there is no way to repair the file. MacDraw files are complex binary files, unlike simple ASCII text files, for example. If the file is not recovered completely intact, there is no way to repair the file.

MacDraw II Layer Corruption Issue
There is a rare but known issue with MacDraw II files becoming corrupted. Specifically, the top layer can become corrupted. Opening these files in MacDraw II results in a "not enough memory" alert or a System error -39, even when there is plenty of memory available to open the file.


To recover these files, open them using MacDraw Pro. The MacDraw II XTND translator can detect and repair these files. The corrupt layer will be discarded. You can then save these files back as MacDraw II files. If the file is not openable by MacDraw Pro, then the corruption is due to some other issue and the file is not recoverable.

MacDraw Pro Layer Corruption Problem
MacDraw Pro files may also, in rare cases, exhibit the same layer corruption behavior as MacDraw II files described previously. However, there is no simple way to recover these files. In some cases, we have been able to recover these files.

Other Issues
A MacDraw II file may have other forms of corruption not known or directly attributable to MacDraw. Opening the file may result in a -36, -39, or -108 System error. The file may have a damaged resource fork and may be salvageable.

To recover the file, open the file with ResEdit. Delete all the resources. Open a known good MacDraw II file. (Open a file from the same version of MacDraw as the corrupted file). Copy and paste all the resources from the good file into the corrupted file. Save the corrupted file. This file should then be openable. This objects in this file should then be copied (via clipboard or Place File) to a new empty file.


If the resource fork is extremely damaged, ResEdit may not be able to open the file. This makes things very difficult, since you need to open the file in ResEdit to delete the resources. In this case, open the file in SUM Tools. Select the resource fork. Set the EOF marker to zero. Save out the file. Then, open the corrupted file and copy and paste all the resources from another good file into the corrupted file. The file should then be openable. This objects in this file should then be copied (via clipboard or Place File) to a new empty file.

Published Date: Feb 18, 2012