Question

J'utilise le merveilleux cadre de RegexKitLite construit sur la bibliothèque de soins intensifs livré avec Mac OS X et iPhone OS. Il a été facile jusqu'à présent, à l'exception de cette erreur qui apparaît par intermittence lors de la recherche des correspondances:

Internal Error
Invalid parameter not satisfying:
(cacheSlot->setToHash == buffer->hash) && (cacheSlot->setToLength == buffer->length) && (cacheSlot->setToUniChar == buffer->uniChar)

Toute idée de ce qui pourrait être la cause?

Était-ce utile?

La solution

NOTE :. Je suis l'auteur de RegexKitLite

Ceci est un échec d'assertion interne au sein RegexKitLite. Il y a beaucoup de contrôles internes affirmation intégrés. Celui-ci dit que après avoir récupéré un regex compilé en cache à partir du cache, le cache est regex pas configuré exactement récupéré tel qu'il devrait être pour une raison quelconque.

La meilleure chose que vous pouvez faire est de soumettre un rapport de bogue à sourceforge.net RegexKit bug tracker . Si possible, soumettre un test qui reproduit le bug. Ceci est un total, sauvage, de la conjecture bleu, mais sur la base du message d'affirmation, je parie qu'il a quelque chose à voir avec les opérations de match dans lequel vous utilisez le paramètre range:, et cette gamme est constamment « en mouvement » et le rétrécissement. cette plage peut traverser la petite / grande taille de la mémoire tampon, quelque part autour de 2048 caractères. une autre possibilité est des chaînes à la recherche qui contiennent des caractères Unicode et RegexKitLite utilise les chaînes tampon directe, peut-être sur une chaîne mutable et le tampon de support a être réaffectés parce que il a grandi ou reculait ... ou une chaîne mutable qui était « non-Unicode » a été muté et contient maintenant des caractères Unicode, et il a passer de la conversion UTF-16 mis en cache sur les chaînes tampon direct.

Si tout va bien, qui vous aidera à affiner le cas d'angle qui déclenche l'échec d'assertion. Hé, au moins il détecte un problème au lieu de marcher lourdement et SEG ou la formation de failles de retour des chaînes de résultat faux. :)

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top