110
110
safe_apply(R, What, Args) ->
111
111
Abort = fun(Re) -> abort_restore(R, What, Args, Re) end,
113
{'EXIT', Pid, Re} -> Abort({'EXIT', Pid, Re})
115
Mod = R#restore.bup_module,
116
case catch apply(Mod, What, Args) of
117
{ok, Opaque, Items} when What =:= read ->
118
{R#restore{bup_data = Opaque}, Items};
119
{ok, Opaque} when What =/= read->
120
R#restore{bup_data = Opaque};
112
Mod = R#restore.bup_module,
113
case catch apply(Mod, What, Args) of
114
{ok, Opaque, Items} when What =:= read ->
115
{R#restore{bup_data = Opaque}, Items};
116
{ok, Opaque} when What =/= read->
117
R#restore{bup_data = Opaque};
128
124
abort_restore(R, What, Args, Reason) ->