Bonjour,

Lorsque je tente de construire un index

Je recois l'erreur suivante :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
 
Long integers lower than -2147483648 (0x80000000) are not supported on 32-bit platforms.
J'ai la version 5.3.3 de php compilée en 32-bit sur un système mac (i386)

Apparemment c'est ce bout de code qui envoie une erreur :

Extrait de : Zend/Search/Lucene/Storage/File/Memory.php

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
 
 public function readLong32Bit()
    {
        $wordHigh = $this->readInt();
        $wordLow  = $this->readInt();
 
        if ($wordHigh & (int)0x80000000) {
            // It's a negative value since the highest bit is set
            if ($wordHigh == (int)0xFFFFFFFF  &&  ($wordLow & (int)0x80000000)) {
                return $wordLow;
            } else {
                require_once 'Zend/Search/Lucene/Exception.php';
                throw new Zend_Search_Lucene_Exception('Long integers lower than -2147483648 (0x80000000) are not supported on 32-bit platforms.');
            }
 
        }
Apparemment, 0x80000000 serait le plus petite variable signée supporté par le système.

or lorsque je fais :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
php -r 'var_dump((int)0x80000000);'
J'ai en retour : int(2147483648) au lieu de int(-2147483648).


Une idée du problème ?.