Ton header est constitué tel que :
#ifdef _HEADER_H_
#define _HEADER_H_
/* Contenu du .h */
#endif
?
Si non si il est inclus X fois et/ou par d'autres header tu risque en effet d'avoir cette surprise.
Ensuite une fonction "static" ne devrais pas se trouver dans un .h