]> Repositorios git - scryer-prolog.git/commitdiff
break from loop upon successful peek in peek_char/1 and peek_code/1
authorMark Thom <[email protected]>
Fri, 26 Nov 2021 06:08:02 +0000 (23:08 -0700)
committerMark Thom <[email protected]>
Fri, 7 Jan 2022 04:44:41 +0000 (21:44 -0700)
src/machine/system_calls.rs

index a35a65e81e334dfe6af88bc6a0de903ae6c4eeb8..3d33d92123c6c53fa0d680f5e37a6ac806e9c8dc 100644 (file)
@@ -1512,6 +1512,7 @@ impl MachineState {
                     match stream.peek_char().map(|result| result.map_err(|e| e.kind())) {
                         Some(Ok(d)) => {
                             self.unify_char(d, a2);
+                            break;
                         }
                         Some(Err(ErrorKind::PermissionDenied)) => {
                             self.fail = true;
@@ -1614,6 +1615,7 @@ impl MachineState {
                     match result.map(|result| result.map_err(|e| e.kind())) {
                         Some(Ok(c)) => {
                             self.unify_fixnum(Fixnum::build_with(c as i64), addr);
+                            break;
                         }
                         Some(Err(ErrorKind::PermissionDenied)) => {
                             self.fail = true;