Tout logiciel est d’abord créé sous forme de code source, c’est-à-dire d’un ensemble organisé de séries d’instructions rédigées dans un langage de programmation évolué et compréhensible par l’homme de l’art compétent. Il est ensuite « traduit » sous forme de code objet, c’est-à-dire de combinaisons infinies de 0 et de 1, elles-mêmes convertibles en impulsions électriques et donc compréhensibles par l’ordinateur, au moyen d’un autre logiciel appelé « compilateur ». Cette opération de traduction, ou de conversion, est appelée compilation.
L’opération inverse, dénommée « décompilation », qui permet, à partir du code objet, de retrouver le code source compréhensible par l’être humain (en réalité, est ainsi récupérée une version du code source qui diffère de la version initiale, et dénommée pour cette raison « quasi-code source »), est en principe subordonnée à l’autorisation du titulaire du droit d’auteur afférent au logiciel. En vertu de l’article 6 de la directive 91/250 CEE du 14 mai 1991 relative à la protection des programmes d’ordinateur (devenue la directive 2009/24/CE ayant le même objet), elle échappe, par exception, à cette autorisation, uniquement lorsque l’opération vise à accéder à des informations nécessaires au développement d’un logiciel interopérable avec celui décompilé, et à la condition, notamment, que ces informations n’aient pas été rendues disponibles par le titulaire du droit d’auteur.
Une société commercialisant des logiciels de sa conception reprochait à l’un de ses licenciés, l’Etat belge, d’avoir décompilé l’un de ses logiciels aux fins, non de développer un logiciel interopérable, mais de désactiver une fonctionnalité défaillante, autrement dit pour corriger une erreur affectant le logiciel en cause.
Saisie du litige, la cour d’appel de Bruxelles a interrogé la Cour de Justice sur la question de savoir si, en substance, la décompilation d’un logiciel pouvait entrer dans le champ de l’exception prévue non par l’article 6 de la directive précitée, mais de son article 5, qui autorise l’utilisateur légitime d’un logiciel (i.e. le bénéficiaire d’une licence) à effectuer tous les actes notamment de reproduction et de traduction de ce logiciel, nécessaires à son utilisation normale, y compris pour en corriger les erreurs. Dans l’affirmative, la cour de Bruxelles demandait encore à la Cour de justice si devaient alors être respectées les conditions de l’exception de décompilation prévues par l’article 6 de la directive.
La Cour de justice répond en substance que, bien que l’article 5 de la directive ne cite pas expressément la décompilation, les actes qu’il autorise à l’utilisateur légitime du logiciel incluent ceux nécessaires à une telle décompilation ; et qu’exclure la décompilation du champ de ce texte reviendrait à le priver d’effet utile, car une telle décompilation est presque toujours nécessaire à la correction des erreurs d’un logiciel, ce qui est exact.
Elle juge donc que l’utilisateur d’un logiciel peut procéder à sa décompilation afin de corriger une ou des erreurs affectant ce logiciel, sans autorisation du titulaire du droit d’auteur, en application de l’article 5 de la directive ; il doit alors, logiquement, respecter les conditions de l’exception prévue par cet article 5 et non celles édictées par son article 6. En conséquence, notamment, il ne peut utiliser les informations obtenues qu’à la seule fin de corriger les erreurs, et doit respecter les conditions contractuelles éventuellement fixées par le titulaire du droit d’auteur (qui ne peut lui interdire contractuellement de procéder à cette correction, mais a pu en fixer les modalités).
Cette solution de bon sens mérite d’être approuvée.