From: Georgi Gerganov Date: Tue, 18 Mar 2025 17:35:11 +0000 (+0200) Subject: speculative : fix seg fault in certain cases (#12454) X-Git-Tag: upstream/0.0.5028~112 X-Git-Url: https://git.djapps.eu/?a=commitdiff_plain;h=c6af2161b200284d55633cf184a07406ca89908e;p=pkg%2Fggml%2Fsources%2Fllama.cpp speculative : fix seg fault in certain cases (#12454) --- diff --git a/examples/speculative/speculative.cpp b/examples/speculative/speculative.cpp index bfddc67e..627d01bb 100644 --- a/examples/speculative/speculative.cpp +++ b/examples/speculative/speculative.cpp @@ -331,11 +331,11 @@ int main(int argc, char ** argv) { } active_seqs.erase(s); - for(int i = 0; i < n_seq_dft; i++) { + for (int i = 0; i < n_seq_dft; i++) { if (i == s) { continue; } - if (drafts[i].tokens[i_dft] == drafts[s].tokens[i_dft]) { + if (drafts[i].active && drafts[i].tokens[i_dft] == drafts[s].tokens[i_dft]) { // synchronize active status for sequences with the same drafted token drafts[i].active = drafts[i].active && accept; if (!drafts[i].active) {