Package: gparted
Version: 0.3.3-5
Severity: important
Tags: patch

Gparted currently fails to build on at least mips. This seems to be
a generic bug in the code which is exposed by g++.
The appended patch works for me, tested on mips/unstable.


Thiemo


--- gparted-0.3.3/src/GParted_Core.cc.old       2007-11-06 03:11:14.000000000 
+0000
+++ gparted-0.3.3/src/GParted_Core.cc   2007-11-06 03:25:38.000000000 +0000
@@ -1698,7 +1698,7 @@ bool GParted_Core::copy_filesystem( cons
 
        while ( succes &&
                timer .elapsed() <= smallest_time && 
-               std::llabs( done ) + N <= length && 
+               ::llabs( done ) + N <= length && 
                optimal_blocksize * 2 < N )
        {
                if ( done != 0 ) 
@@ -1742,7 +1742,7 @@ bool GParted_Core::copy_filesystem( cons
                                    dst_device,
                                    src_start + ( dst_start > src_start ? 0 : 
done ),
                                    dst_start + ( dst_start > src_start ? 0 : 
done ),
-                                   length - std::llabs( done ), 
+                                   length - ::llabs( done ), 
                                    optimal_blocksize,
                                    operationdetail,
                                    readonly,
@@ -1916,7 +1916,7 @@ bool GParted_Core::copy_blocks( const Gl
        if ( lp_device_src && lp_device_dst && ped_device_open( lp_device_src ) 
&& ped_device_open( lp_device_dst ) )
        {
                Glib::ustring error_message ;
-               buf = static_cast<char *>( malloc( std::llabs( blocksize ) * 
512 ) ) ;
+               buf = static_cast<char *>( malloc( ::llabs( blocksize ) * 512 ) 
) ;
                if ( buf )
                {
                        ped_device_sync( lp_device_dst ) ;
@@ -1937,7 +1937,7 @@ bool GParted_Core::copy_blocks( const Gl
                        operationdetail .get_last_child() .add_child( 
OperationDetail( "", STATUS_NONE ) ) ;
                        
                        Glib::Timer timer_progress_timeout, timer_total ;
-                       while( succes && std::llabs( done ) < length )
+                       while( succes && ::llabs( done ) < length )
                        {
                                succes = copy_block( lp_device_src,
                                                     lp_device_dst,
@@ -1952,7 +1952,7 @@ bool GParted_Core::copy_blocks( const Gl
                                if ( timer_progress_timeout .elapsed() >= 0.5 )
                                {
                                        set_progress_info( length,
-                                                          std::llabs( done + 
blocksize ),
+                                                          ::llabs( done + 
blocksize ),
                                                           timer_total,
                                                           operationdetail 
.get_last_child() .get_last_child(),
                                                           readonly ) ;
@@ -1971,13 +1971,13 @@ bool GParted_Core::copy_blocks( const Gl
 
                //final description
                operationdetail .get_last_child() .get_last_child() 
.set_description( 
-                       String::ucompose( readonly ? _("%1 of %2 read") : _("%1 
of %2 copied"), std::llabs( done ), length ), FONT_ITALIC ) ;
+                       String::ucompose( readonly ? _("%1 of %2 read") : _("%1 
of %2 copied"), ::llabs( done ), length ), FONT_ITALIC ) ;
                
                if ( ! succes && ! error_message .empty() )
                        operationdetail .get_last_child() .add_child( 
                                OperationDetail( error_message, STATUS_NONE, 
FONT_ITALIC ) ) ;
                
-               total_done += std::llabs( done ) ;
+               total_done += ::llabs( done ) ;
        
                //close and destroy the devices..
                ped_device_close( lp_device_src ) ;
@@ -2004,7 +2004,7 @@ bool GParted_Core::copy_block( PedDevice
 {
        if ( blocksize < 0 )
        {
-               blocksize = std::llabs( blocksize ) ;
+               blocksize = ::llabs( blocksize ) ;
                offset_src -= ( blocksize -1 ) ;
                offset_dst -= ( blocksize -1 ) ;
        }



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

Reply via email to