more saved state fixes

git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@2185 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
This commit is contained in:
vsc
2008-04-01 15:31:43 +00:00
parent f37bc03304
commit a8fe6a668e
4 changed files with 27 additions and 8 deletions

View File

@@ -10,8 +10,11 @@
* File: c_interface.c *
* comments: c_interface primitives definition *
* *
* Last rev: $Date: 2008-03-22 23:35:00 $,$Author: vsc $ *
* Last rev: $Date: 2008-04-01 15:31:41 $,$Author: vsc $ *
* $Log: not supported by cvs2svn $
* Revision 1.108 2008/03/22 23:35:00 vsc
* fix bug in all_calls
*
* Revision 1.107 2008/03/13 18:41:50 vsc
* -q flag
*
@@ -1652,7 +1655,7 @@ YAP_Init(YAP_init_args *yap_init)
Yap_argv = yap_init->Argv;
Yap_argc = yap_init->Argc;
if (yap_init->SavedState != NULL &&
if (yap_init->SavedState != NULL ||
yap_init->YapPrologBootFile == NULL) {
if (Yap_SavedInfo (yap_init->SavedState, yap_init->YapLibDir, &Trail, &Stack, &Heap) != 1) {
yap_init->ErrorNo = Yap_Error_TYPE;

View File

@@ -522,7 +522,8 @@ InitPlIO (void)
for (i = 0; i < MaxStreams; ++i)
Stream[i].status = Free_Stream_f;
/* alloca alias array */
FileAliases = (AliasDesc)Yap_AllocCodeSpace(sizeof(struct AliasDescS)*ALIASES_BLOCK_SIZE);
if (!FileAliases)
FileAliases = (AliasDesc)Yap_AllocCodeSpace(sizeof(struct AliasDescS)*ALIASES_BLOCK_SIZE);
InitStdStreams();
}

View File

@@ -1012,6 +1012,7 @@ restore_heap_regs(void)
*((YAP_SEG_SIZE *) HeapTop) = InUseFlag;
}
HeapMax = Yap_heap_regs->heap_used = OldHeapUsed;
HeapLim = Yap_GlobalBase;
restore_codes();
}