From: Johannes Gäßler Date: Wed, 4 Mar 2026 11:04:31 +0000 (+0100) Subject: ggml: fix ggml_is_contiguous_n for ne == 1 (#20092) X-Git-Tag: upstream/0.0.8611~413 X-Git-Url: https://git.djapps.eu/?a=commitdiff_plain;h=7f5ee549683d600ad41db6a295a232cdd2d8eb9f;p=pkg%2Fggml%2Fsources%2Fllama.cpp ggml: fix ggml_is_contiguous_n for ne == 1 (#20092) --- diff --git a/ggml/src/ggml.c b/ggml/src/ggml.c index e9529fbb6..d644cca8a 100644 --- a/ggml/src/ggml.c +++ b/ggml/src/ggml.c @@ -1410,16 +1410,14 @@ static bool ggml_is_contiguous_n(const struct ggml_tensor * tensor, int n) { } next_nb *= tensor->ne[0]/ggml_blck_size(tensor->type); for (int i = 1; i < GGML_MAX_DIMS; i++) { - if (tensor->ne[i] != 1) { - if (i > n) { - if (tensor->nb[i] != next_nb) { - return false; - } - next_nb *= tensor->ne[i]; - } else { - // this dimension does not need to be contiguous - next_nb = tensor->ne[i]*tensor->nb[i]; + if (i > n) { + if (tensor->ne[i] != 1 && tensor->nb[i] != next_nb) { + return false; } + next_nb *= tensor->ne[i]; + } else { + // this dimension does not need to be contiguous + next_nb = tensor->ne[i]*tensor->nb[i]; } } return true;