Jump to content

Chamada de testes para o pev v0.81


Fernando Mercês

Recommended Posts

  • Administrators

Pessoal, temos planos de fazer um release da versão 0.81 do pev em breve. Queria pedir a ajuda de vocês para testar a última versão do código disponível em https://github.com/merces/pev. A ideia é baixar e compilar nos ambientes (Windows, Linux e macOS) e rodar os programas com alguns .exe de exemplo (vocês escolhem quais .exe analisar). Se der algum erro, etc, reportar aqui. Posso contar com vocês? ?

Abraço!

Link to comment
Share on other sites

  • 2 weeks later...
$ make
cd lib/libpe && make all
make[1]: Entering directory '/mnt/vol2/Work/thirdparty/pev/lib/libpe'
make[1]: *** No rule to make target 'all'.  Stop.
make[1]: Leaving directory '/mnt/vol2/Work/thirdparty/pev/lib/libpe'
Makefile:9: recipe for target 'all' failed
make: *** [all] Error 2


Instalei as dependências contidas em README.md....

Note que meu diretório de trabalho é /mnt/vol2/Work/thirdparty/pev/

Link to comment
Share on other sites

10 horas atrás, Fernando Mercês disse:

Pois é. Tem um subprojeto que é a libpe. Mas e aí, algum bug em princípio?

Abraços e obrigado!

Hehehe... tô dando uma olhada no código... Tenho um patch proce testar ai... (encerrei minha conta no GitHub, dai nada de PRs!)... :)

Não são bugs... só algumas pequeninas melhorias...


PS: Adicionei mais um monte de modificações e comentários de FIXME
Muitas modificações têm comentário FIX.

 

patch.diff

Link to comment
Share on other sites

Outra modificação simples que acho interessante....
Algumas rotinas usam a técnica de limitar um buffer para conter uma string, declarando o buffer com tamanho fixo e usando snprintf... Por exemplo, usando a constante PATH_MAX:
 

char path[PATH_MAX];
...
snprintf( path, PATH_MAX, "%s/%s", dirname, filename);

No entanto, PATH_MAX é histórico e não corresponde ao tamanho máximo de um path na maioria dos sistemas operacionais (Windows, por exemplo, suporta até 32 KiB de path)... Uma maneira mais interessante seria alocar dinamicamente:

 

char *path;

asprintf(&path, "%s/%s", dirname, filename);
...
free(path);

Tá certo que asprintf() não existe no Windows, por exemplo, mas pode-se fazer algo assim:

https://bitismyth.wordpress.com/2015/02/28/nao-existe-asprintf-no-windows-sem-problemas/

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...