Skip to content

Error Recovery (Snapshot)

Marco edited this page Aug 25, 2019 · 1 revision

If Wmderland crashes due to an exception, it will try to perform error recovery from a snapshot file.

When a C++ exception is caugh, except Snapshot::SnapshotLoadError, it will:

  1. serialize all window trees (or client trees) into snapshot file.
  2. write all docks/notifications window id(s) into snapshot file.
  3. execl(args[0], args[0])
  4. try to deserialize everything from the snapshot.

Also, if it fails to load the snapshot, or the same error occurs consecutively over 3 times, wmderland will still shutdown. The user will have to manually restart it.

Clone this wiki locally