author | zautrix <zautrix> | 2005-02-07 20:05:18 (UTC) |
---|---|---|
committer | zautrix <zautrix> | 2005-02-07 20:05:18 (UTC) |
commit | da5e47069d88fa9aa656423ce4c60bf505728e1c (patch) (unidiff) | |
tree | fdbaf29835a028f1204a19fc10dea97d469c0b29 /microkde/kdecore/klibloader.cpp | |
parent | 456b0246521847635fe98471691ceecae211e0c3 (diff) | |
download | kdepimpi-da5e47069d88fa9aa656423ce4c60bf505728e1c.zip kdepimpi-da5e47069d88fa9aa656423ce4c60bf505728e1c.tar.gz kdepimpi-da5e47069d88fa9aa656423ce4c60bf505728e1c.tar.bz2 |
fixes
Diffstat (limited to 'microkde/kdecore/klibloader.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r-- | microkde/kdecore/klibloader.cpp | 14 |
1 files changed, 3 insertions, 11 deletions
diff --git a/microkde/kdecore/klibloader.cpp b/microkde/kdecore/klibloader.cpp index 1394154..6d0475a 100644 --- a/microkde/kdecore/klibloader.cpp +++ b/microkde/kdecore/klibloader.cpp | |||
@@ -475,59 +475,51 @@ KLibrary* KLibLoader::library( const char *name ) | |||
475 | wrap = it.current(); | 475 | wrap = it.current(); |
476 | } | 476 | } |
477 | 477 | ||
478 | if (wrap) { | 478 | if (wrap) { |
479 | d->pending_close.removeRef(wrap); | 479 | d->pending_close.removeRef(wrap); |
480 | if (!wrap->lib) { | 480 | if (!wrap->lib) { |
481 | /* This lib only was in loaded_stack, but not in m_libs. */ | 481 | /* This lib only was in loaded_stack, but not in m_libs. */ |
482 | wrap->lib = new KLibrary( name, wrap->filename, wrap->handle ); | 482 | wrap->lib = new KLibrary( name, wrap->filename, wrap->handle ); |
483 | } | 483 | } |
484 | wrap->ref_count++; | 484 | wrap->ref_count++; |
485 | } else { | 485 | } else { |
486 | QString libfile = findLibrary( name ); | 486 | QString libfile = findLibrary( name ); |
487 | if ( libfile.isEmpty() ) | 487 | if ( libfile.isEmpty() ) |
488 | return 0; | 488 | return 0; |
489 | #ifdef DESKTOP_VERSION | 489 | #ifdef DESKTOP_VERSION |
490 | QLibrary *qlib = new QLibrary( libfile.latin1() ); | 490 | QLibrary *qlib = new QLibrary( libfile.latin1() ); |
491 | #else | 491 | #else |
492 | QLibrary *qlib = new QLibrary( libfile.latin1(), QLibrary::Immediately ); | 492 | QLibrary *qlib = new QLibrary( libfile.latin1(), QLibrary::Immediately ); |
493 | #endif | 493 | #endif |
494 | 494 | ||
495 | //US lt_dlhandle handle = lt_dlopen( libfile.latin1() ); | 495 | //US lt_dlhandle handle = lt_dlopen( libfile.latin1() ); |
496 | //US if ( !handle ) | 496 | //US if ( !handle ) |
497 | if ( !qlib ) | 497 | if ( !qlib ) |
498 | { | 498 | { |
499 | //US const char* errmsg = lt_dlerror(); | 499 | qDebug( "KLibLoader::library could not load library: %s", libfile.latin1()); |
500 | char* errmsg; | 500 | d->errorMessage = QString::null; |
501 | sprintf(errmsg, "KLibLoader::library could not load library: %s", libfile.latin1()); | 501 | return 0; |
502 | qDebug(errmsg); | ||
503 | |||
504 | if(errmsg) | ||
505 | d->errorMessage = QString::fromLatin1(errmsg); | ||
506 | else | ||
507 | d->errorMessage = QString::null; | ||
508 | kdWarning(150) << "library=" << name << ": file=" << libfile << ": " << d->errorMessage << endl; | ||
509 | return 0; | ||
510 | } | 502 | } |
511 | else | 503 | else |
512 | d->errorMessage = QString::null; | 504 | d->errorMessage = QString::null; |
513 | 505 | ||
514 | KLibrary *lib = new KLibrary( name, libfile, qlib ); | 506 | KLibrary *lib = new KLibrary( name, libfile, qlib ); |
515 | wrap = new KLibWrapPrivate(lib, qlib); | 507 | wrap = new KLibWrapPrivate(lib, qlib); |
516 | d->loaded_stack.prepend(wrap); | 508 | d->loaded_stack.prepend(wrap); |
517 | } | 509 | } |
518 | m_libs.insert( name, wrap ); | 510 | m_libs.insert( name, wrap ); |
519 | 511 | ||
520 | connect( wrap->lib, SIGNAL( destroyed() ), | 512 | connect( wrap->lib, SIGNAL( destroyed() ), |
521 | this, SLOT( slotLibraryDestroyed() ) ); | 513 | this, SLOT( slotLibraryDestroyed() ) ); |
522 | 514 | ||
523 | return wrap->lib; | 515 | return wrap->lib; |
524 | } | 516 | } |
525 | 517 | ||
526 | QString KLibLoader::lastErrorMessage() const | 518 | QString KLibLoader::lastErrorMessage() const |
527 | { | 519 | { |
528 | return d->errorMessage; | 520 | return d->errorMessage; |
529 | } | 521 | } |
530 | 522 | ||
531 | void KLibLoader::unloadLibrary( const char *libname ) | 523 | void KLibLoader::unloadLibrary( const char *libname ) |
532 | { | 524 | { |
533 | KLibWrapPrivate *wrap = m_libs[ libname ]; | 525 | KLibWrapPrivate *wrap = m_libs[ libname ]; |