Erro ao tentar criar tabela (ALGUEM?)

Boa noite a todos, alguém sabe o porquê de estar dando erro (abaixo do SQL) ao tentar criar esta tabela?

[code]delimiter $$

CREATE TABLE fornecedor (
idPessoa int(6) NOT NULL,
idAtividade int(6) NOT NULL,
contato_principal varchar(60) DEFAULT NULL,
email_nota_fiscal varchar(150) NOT NULL,
razao_social varchar(60) NOT NULL,
PRIMARY KEY (idPessoa),
FOREIGN KEY (idPessoa) REFERENCES pessoa (idPessoa),
FOREIGN KEY (idAtividade) REFERENCES atividade (idAtividade)
) ENGINE=InnoDB DEFAULT CHARSET=latin2$$[/code]

Erro:
/* SQL Error (1005): Can’t create table ‘gpa.fornecedor’ (errno: 150) Foreign key constraint is incorrectly formed */

O erro acontece não só nesta tabela mas em todas as demais que tento colocar uma FK, não entendo o porquê!

Boa noite!

Já verificou se nas tabelas onde estão os registros das chaves estrangeiras, os valores são iguais aos os da chave primária?

Exemplo: TB_Chamada.ID_Chamada INT(9);
TB_Chamada_Ocorrencia.FK_ID_Chamada INT(9);

Tente também diferenciar os campos… pelo que vi no seu código, os nomes das chaves estrangeiras são iguais aos das primárias!
Eu faço assim pra melhor visualizar os campos: ID_Nome (chave primária) - FK_ID_Nome (chave estrangeira)
Fica até mais fácil pra outras pessoas reconhecerem seu código !

Sim é verdade, eu corrigi os nomes e o problema realmente era este dos tipos, a pessoa tinha zerofill e nos demais não, por isto deu erro! Vlw pela ajuda.

De nada!, boa noite.