Bug 275584

Summary: KIO uses private Qt APIs that have been removed in 4.8
Product: [Unmaintained] kdelibs Reporter: Bernhard Rosenkraenzer <bero>
Component: kdecoreAssignee: kdelibs bugs <kdelibs-bugs>
Status: RESOLVED FIXED    
Severity: normal CC: ahartmetz
Priority: NOR    
Version: unspecified   
Target Milestone: ---   
Platform: Compiled Sources   
OS: Linux   
Latest Commit: Version Fixed In:
Sentry Crash Report:

Description Bernhard Rosenkraenzer 2011-06-13 21:02:05 UTC
Version:           unspecified (using Devel) 
OS:                Linux

Building kio with a Qt 4.8-tp1 or a subsequent git snapshot results in:

/usr/src/ark/BUILD/kdelibs/kio/kio/scheduler.cpp: In member function 'void KIO::ProtoQueue::startAJob()':
/usr/src/ark/BUILD/kdelibs/kio/kio/scheduler.cpp:596:19: warning: unused variable 'prevLowestSerial' [-Wunused-variable]
In file included from /usr/src/ark/BUILD/kdelibs/kio/kio/scheduler.cpp:1292:0:
/usr/src/ark/BUILD/kdelibs/build/kio/scheduler.moc: In static member function 'static void KIO::Scheduler::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)':
/usr/src/ark/BUILD/kdelibs/build/kio/scheduler.moc:77:21: error: 'class KIO::Scheduler' has no member named 'schedulerPrivate'
/usr/src/ark/BUILD/kdelibs/build/kio/scheduler.moc:78:21: error: 'class KIO::Scheduler' has no member named 'schedulerPrivate'
/usr/src/ark/BUILD/kdelibs/build/kio/scheduler.moc:79:21: error: 'class KIO::Scheduler' has no member named 'schedulerPrivate'
/usr/src/ark/BUILD/kdelibs/build/kio/scheduler.moc:80:21: error: 'class KIO::Scheduler' has no member named 'schedulerPrivate'
/usr/src/ark/BUILD/kdelibs/build/kio/scheduler.moc:81:21: error: 'class KIO::Scheduler' has no member named 'schedulerPrivate'
/usr/src/ark/BUILD/kdelibs/build/kio/scheduler.moc:82:21: error: 'class KIO::Scheduler' has no member named 'schedulerPrivate'
make[2]: *** [kio/CMakeFiles/kio.dir/kio/scheduler.o] Error 1


Reproducible: Always

Steps to Reproduce:
1. Install a Qt 4.8 snapshot
2. Build kdelibs against it

Actual Results:  
Barfs on schedulerPrivate usage because that private API has been removed

Expected Results:  
compiles and works
Comment 1 Andreas Hartmetz 2011-06-14 02:44:20 UTC
I've fixed this about a week ago in master. It was mostly my fault because the Qt macro Q_PRIVATE_SLOT used here is not official (i.e. not documented) and I used it in a slightly unconventional way.