- Added a new prioritylevel for seemingly public keys, but the splice-as
problem remains.
This commit is contained in:
parent
29445bbd5f
commit
ba832159b1
@ -545,8 +545,22 @@ bind_existing_to_goal (const Binding b, const int run, const int index)
|
|||||||
while (tl != NULL)
|
while (tl != NULL)
|
||||||
{
|
{
|
||||||
int keyrun;
|
int keyrun;
|
||||||
|
int prioritylevel;
|
||||||
|
|
||||||
goal_add (tl->term, b->run_to, b->ev_to, 1);
|
/* normally, a key gets higher priority */
|
||||||
|
prioritylevel = 1;
|
||||||
|
if (realTermEncrypt (tl->term))
|
||||||
|
{
|
||||||
|
/* the key is a construction itself */
|
||||||
|
if (inKnowledge (sys->know, tl->term->right.key))
|
||||||
|
{
|
||||||
|
/* the key is constructed by a public thing */
|
||||||
|
/* typically, this is a public key, so we postpone it */
|
||||||
|
prioritylevel = -1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
/* add the key as a goal */
|
||||||
|
goal_add (tl->term, b->run_to, b->ev_to, prioritylevel);
|
||||||
tl = tl->next;
|
tl = tl->next;
|
||||||
keycount++;
|
keycount++;
|
||||||
}
|
}
|
||||||
@ -1028,7 +1042,7 @@ select_goal ()
|
|||||||
indentPrint ();
|
indentPrint ();
|
||||||
eprintf ("Listing open goals that might be chosen: ");
|
eprintf ("Listing open goals that might be chosen: ");
|
||||||
}
|
}
|
||||||
max_level = -1; // 0 is the minimum level
|
max_level = INT_MIN;
|
||||||
best = NULL;
|
best = NULL;
|
||||||
bl = sys->bindings;
|
bl = sys->bindings;
|
||||||
while (bl != NULL)
|
while (bl != NULL)
|
||||||
|
Loading…
Reference in New Issue
Block a user