Modifique jsm em omni.ja

5

Plataforma: FF17 win32

Estou tentando modificar modules / AddonUpdateChecker.jsm dentro do omni.ja. Não importa o que eu faça, não posso pedir à FF para tomar conhecimento das minhas modificações.

Eu já passei por todas as sugestões sugeridas em vários lugares na Internet:

  • todos os startupCache à vista
  • Extensões ativadas / desativadas para forçar o recarregamento de omni.ja
  • Até tentei desinstalar / reinstalar o FF, modificando o jar antes da primeira execução

Eu não quero ser vítima do problema XY, então:

O que estou realmente tentando fazer é implementar este para o processo de criação automatizado de minhas extensões . Sim, estou ciente de que existem soluções para isso, mas gostaria de implementá-lo pessoalmente, já que o sistema de criação é altamente personalizado.

Cheguei agora a um ponto em que o FF está (de fato) dizendo que minha assinatura está errada. Eu suspeito que isso é porque minha rotina de serialização está errada, e eu não posso descobrir onde baseado na documentação - então eu gostaria de inspecionar a seqüência serializada que FF está construindo no lado do cliente para a comparação. Esta string é construída e a assinatura é verificada (via XPCOM) em modules / AddonUpdateChecker.jsm.

Então, como posso fazer com que o Firefox preste atenção às minhas modificações? Ou há uma maneira mais fácil de ver essa string?

    
por DaveRandom 07.01.2013 / 02:15

1 resposta

7

As versões atuais do Firefox têm um cache dentro de omni.ja . Se você remover o arquivo jsloader/resource/gre/modules/AddonUpdateChecker.jsm de omni.ja , o Firefox deverá começar a analisar seu modules/AddonUpdateChecker.jsm modificado. Além disso, você deseja especificar o sinalizador de linha de comando -purgecaches em vez de procurar os caches de inicialização.

Side-note: geralmente é útil definir extensions.logging.enabled to true ao depurar problemas de instalação de extensões, isso imprimirá muitas informações adicionais para o Error Console. É claro que não sei se essa informação adicional será suficiente em seu caso particular.

    
por 07.01.2013 / 07:56