Weaknesses of type CWE-1119

2 results

Uso Excessivo de Desvios Incondicionais

É quando o código usa muitos `goto`, `break`, `continue` ou `return` espalhados sem lógica clara, tornando o fluxo de execução difícil de seguir e aumentando o risco de bugs. Isso reduz a manutenibilidade e deixa brechas para comportamentos inesperados.

Example

Um validador de entrada que salta entre múltiplos pontos de `goto` em vez de usar estruturas condicionais simples (if/else), deixando caminhos de código obscuros que podem contornar a validação de segurança acidentalmente.

How to mitigate

Refatore o código para usar estruturas de controle claras (if/else, loops normais, funções bem delimitadas). Use linters que alertem sobre `goto` excessivo e mantenha a profundidade de aninhamento baixa para melhor legibilidade e menos erros lógicos.