9fc4d83d522795b0bfab4c1e4043527694dd1e5c
12 #include "workspace.h"
14 /* allocate workspace*/
16 workspace_t
*alloc_ws ()
18 return (workspace_t
*) callocordie (1, sizeof (workspace_t
));
23 workspace_t
*backup_ws (workspace_t
*ws
)
27 free_tab (ws
->argument
);
29 ws
->argument
= copy_tab (argument
);
33 ws
->stack
= copy_tab (stack
);
35 free_tab (ws
->storage
);
37 ws
->storage
= copy_tab (storage
);
43 workspace_t
*clean_ws (workspace_t
*ws
)
48 free_tab (ws
->argument
);
55 delelement (ws
->root
);
70 free_tab (ws
->storage
);
79 void free_ws (workspace_t
*ws
)
87 /* restore workspace*/
89 void restore_ws (workspace_t
*ws
)
96 argument
= copy_tab (ws
->argument
);
101 stack
= copy_tab (ws
->stack
);
106 storage
= copy_tab (ws
->storage
);
109 /* vim: set ts=4 sw=4 et: */