Package: yate
Version: 0.8.7-2
Severity: normal
Tags: patch

When building 'yate' on amd64/unstable with gcc-4.0,
I get the following error:

extmodule.cpp: In constructor 'MsgHolder::MsgHolder(TelEngine::Message&)':
extmodule.cpp:315: error: cast from 'MsgHolder*' to 'unsigned int' loses 
precision
make[2]: *** [extmodule.yate] Error 1
make[2]: Leaving directory `/yate-0.8.7/modules'

The attached patch to 'yate' fixes this error and also some other gcc-4.0
related errors.

Additionally, the package does not autobuild because it does not find
the zaptel.h include file in /usr/src/modules. 
The *tar.bz2 with the zaptel source has to be untared.

Regards
Andreas Jochens

diff -urN ../tmp-orig/yate-0.8.7/contrib/qt/qtclientform.cpp 
./contrib/qt/qtclientform.cpp
--- ../tmp-orig/yate-0.8.7/contrib/qt/qtclientform.cpp  2005-01-10 
03:32:57.000000000 +0100
+++ ./contrib/qt/qtclientform.cpp       2005-04-04 10:41:50.384404091 +0200
@@ -50,7 +50,7 @@
        correctDigit = new QPushButton (this);
        correctDigit->setGeometry (90, 90, 30, 20);
        correctDigit->setText ("<=");
-       QKeySequence seqCorrectDigit (UNICODE_ACCEL + '-');//Key_Backspace
+       QKeySequence seqCorrectDigit ((int)UNICODE_ACCEL + '-');//Key_Backspace
        correctDigit->setAccel (seqCorrectDigit);
        connect (correctDigit, SIGNAL(clicked()), numberDisplay, 
SLOT(removeLastDigit()));
        correctDigit->setFocusPolicy (NoFocus);
@@ -58,7 +58,7 @@
        rejectCall = new QPushButton (this);
        rejectCall->setGeometry (67, 120, 53, 20);
        rejectCall->setText ("Reject");
-       QKeySequence seqRejectCall (UNICODE_ACCEL + '/');
+       QKeySequence seqRejectCall ((int)UNICODE_ACCEL + '/');
        rejectCall->setAccel (seqRejectCall);
        rejectCall->setFocusPolicy (NoFocus);
        connect (rejectCall, SIGNAL (clicked()),
@@ -76,7 +76,7 @@
        quitButton = new QPushButton (this);
        quitButton->setGeometry (10, 90, 53, 20);
        quitButton->setText ("Quit");
-       QKeySequence seqQuitButton (UNICODE_ACCEL + 'q');
+       QKeySequence seqQuitButton ((int)UNICODE_ACCEL + 'q');
        quitButton->setAccel (seqQuitButton);
        quitButton->setFocusPolicy (NoFocus);
        connect (quitButton, SIGNAL (clicked()),
@@ -102,7 +102,7 @@
        addToAddressBookButton = new QPushButton (this);
        addToAddressBookButton->setGeometry (215, 50, 75, 25);
        addToAddressBookButton->setText ("Add");
-       QKeySequence seqAddButton (UNICODE_ACCEL + 'a');
+       QKeySequence seqAddButton ((int)UNICODE_ACCEL + 'a');
        addToAddressBookButton->setAccel (seqAddButton);
        addToAddressBookButton->setFocusPolicy (NoFocus);
        connect (addToAddressBookButton, SIGNAL (clicked()),
diff -urN ../tmp-orig/yate-0.8.7/contrib/qt/yatedialbutton.cpp 
./contrib/qt/yatedialbutton.cpp
--- ../tmp-orig/yate-0.8.7/contrib/qt/yatedialbutton.cpp        2005-01-10 
03:32:57.000000000 +0100
+++ ./contrib/qt/yatedialbutton.cpp     2005-04-04 10:41:09.082148052 +0200
@@ -40,11 +40,11 @@
 
        QKeySequence *seq = NULL;
        if (value >= '0' && value <='9')
-               seq = new QKeySequence (UNICODE_ACCEL + value);
+               seq = new QKeySequence ((int)UNICODE_ACCEL + value);
        if (value == '*')
-               seq = new QKeySequence (UNICODE_ACCEL + '*');
+               seq = new QKeySequence ((int)UNICODE_ACCEL + '*');
        if (value == '#')
-               seq = new QKeySequence (UNICODE_ACCEL + '.'); /* change it with 
'#', but it's nicer if you use the numeric keypad */
+               seq = new QKeySequence ((int)UNICODE_ACCEL + '.'); /* change it 
with '#', but it's nicer if you use the numeric keypad */
        if (seq)
                setAccel (*seq);
        setFocusPolicy (NoFocus);
diff -urN ../tmp-orig/yate-0.8.7/modules/extmodule.cpp ./modules/extmodule.cpp
--- ../tmp-orig/yate-0.8.7/modules/extmodule.cpp        2004-12-21 
05:16:09.000000000 +0100
+++ ./modules/extmodule.cpp     2005-04-04 10:26:53.000000000 +0200
@@ -312,7 +312,7 @@
     : m_msg(msg), m_ret(false)
 {
     // the address of this object should be unique
-    m_id = (unsigned int)this;
+    m_id = (unsigned int)(unsigned long)this;
     m_id << (unsigned int)random();
 }
 
diff -urN ../tmp-orig/yate-0.8.7/modules/zapchan.cpp ./modules/zapchan.cpp
--- ../tmp-orig/yate-0.8.7/modules/zapchan.cpp  2005-01-16 05:39:36.000000000 
+0100
+++ ./modules/zapchan.cpp       2005-04-04 10:43:19.029783538 +0200
@@ -590,7 +590,7 @@
       m_restart(0), m_chans(0), m_ok(false)
 {
     Debug(DebugAll,"PriSpan::PriSpan(%p,%d,%d,%d) 
[%p]",_pri,span,chans,fd,this);
-    ZapChan **ch = new (ZapChan *)[chans];
+    ZapChan **ch = new ZapChan*[chans];
     for (int i = 1; i <= chans; i++)
        ch[i-1] = (i == dchan) ? 0 : new ZapChan(this,i,s_buflen);
     m_chans = ch;


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]

Reply via email to