*/
int PreBmGs(const uint8_t *x, uint16_t m, uint16_t *bmGs) {
int32_t i, j;
- uint16_t *suff;
-
- suff = SCMalloc(sizeof(uint16_t) * (m + 1));
- if (unlikely(suff == NULL))
- return -1;
+ uint16_t suff[m + 1];
BoyerMooreSuffixes(x, m, suff);
for (i = 0; i <= m - 2; ++i)
bmGs[m - 1 - suff[i]] = m - 1 - i;
- SCFree(suff);
return 0;
}
*/
void PreBmGsNocase(const uint8_t *x, uint16_t m, uint16_t *bmGs) {
int32_t i, j;
- uint16_t* suff;
-
- suff = SCMalloc(sizeof(uint16_t) * (m + 1));
- if (unlikely(suff == NULL))
- return;
+ uint16_t suff[m + 1];
BoyerMooreSuffixesNocase(x, m, suff);
for (i = 0; i <= m - 2; ++i) {
bmGs[m - 1 - suff[i]] = m - 1 - i;
}
-
- SCFree(suff);
}
/**