summaryrefslogtreecommitdiffstats
path: root/kdeprint
diff options
context:
space:
mode:
Diffstat (limited to 'kdeprint')
-rw-r--r--kdeprint/cups/cupsdconf2/cupsddialog.cpp1
-rw-r--r--kdeprint/cups/kmcupsmanager.cpp2
-rw-r--r--kdeprint/kmvirtualmanager.cpp10
-rw-r--r--kdeprint/kprintpreview.cpp3
-rw-r--r--kdeprint/management/smbview.cpp26
5 files changed, 31 insertions, 11 deletions
diff --git a/kdeprint/cups/cupsdconf2/cupsddialog.cpp b/kdeprint/cups/cupsdconf2/cupsddialog.cpp
index 77f35e1e3..8023aeef7 100644
--- a/kdeprint/cups/cupsdconf2/cupsddialog.cpp
+++ b/kdeprint/cups/cupsdconf2/cupsddialog.cpp
@@ -45,6 +45,7 @@
#include <kguiitem.h>
#include <kprocess.h>
+#include <stdlib.h>
#include <signal.h>
#include <cups/cups.h>
diff --git a/kdeprint/cups/kmcupsmanager.cpp b/kdeprint/cups/kmcupsmanager.cpp
index 63513ba55..2d923a371 100644
--- a/kdeprint/cups/kmcupsmanager.cpp
+++ b/kdeprint/cups/kmcupsmanager.cpp
@@ -85,7 +85,7 @@ static int trials = 5;
// change LANG variable so that CUPS is always using
// english language: translation may only come from the PPD
// itself, or from KDE.
- setenv("LANG", "en", 1);
+ setenv("LANG", "en_US.UTF-8", 1);
}
KMCupsManager::~KMCupsManager()
diff --git a/kdeprint/kmvirtualmanager.cpp b/kdeprint/kmvirtualmanager.cpp
index a6e263faf..268da3eac 100644
--- a/kdeprint/kmvirtualmanager.cpp
+++ b/kdeprint/kmvirtualmanager.cpp
@@ -179,7 +179,7 @@ void KMVirtualManager::setAsDefault(KMPrinter *p, const TQString& name, TQWidget
void KMVirtualManager::refresh()
{
- QFileInfo fi(TQDir::homeDirPath() + TQFile::decodeName("/.lpoptions"));
+ QFileInfo fi(TQDir::homeDirPath() + TQFile::decodeName("/.cups/.lpoptions"));
QFileInfo fi2(TQFile::decodeName("/etc/cups/lpoptions"));
// if root, then only use global file: trick -> use twice the same file
@@ -301,7 +301,13 @@ void KMVirtualManager::triggerSave()
filename = TQFile::decodeName("/etc/cups/lpoptions");
}
else
- filename = TQDir::homeDirPath() + TQFile::decodeName("/.lpoptions");
+ {
+ TQDir cupsDir(TQDir::home().absPath()+"/.cups");
+ if (!cupsDir.exists())
+ cupsDir.mkdir(TQDir::home().absPath()+"/.cups");
+ filename = TQDir::homeDirPath() + TQFile::decodeName("/.cups/lpoptions");
+ }
+
if (!filename.isEmpty())
{
saveFile(filename);
diff --git a/kdeprint/kprintpreview.cpp b/kdeprint/kprintpreview.cpp
index ab669ea6e..5ad8a428f 100644
--- a/kdeprint/kprintpreview.cpp
+++ b/kdeprint/kprintpreview.cpp
@@ -108,6 +108,9 @@ static KLibFactory* componentFactory()
{
kdDebug(500) << "kdeprint: querying trader for 'application/postscript' service" << endl;
KLibFactory *factory(0);
+ factory = KLibLoader::self()->factory("libkghostviewpart");
+ if( factory )
+ return factory;
KTrader::OfferList offers = KTrader::self()->query(TQString::fromLatin1("application/postscript"), TQString::fromLatin1("KParts/ReadOnlyPart"), TQString::null, TQString::null);
for (KTrader::OfferList::ConstIterator it = offers.begin(); it != offers.end(); ++it)
{
diff --git a/kdeprint/management/smbview.cpp b/kdeprint/management/smbview.cpp
index 127a42e76..08f8487f7 100644
--- a/kdeprint/management/smbview.cpp
+++ b/kdeprint/management/smbview.cpp
@@ -184,16 +184,26 @@ void SmbView::setOpen(TQListViewItem *item, bool on)
}
else if (item->depth() == 1)
{ // opening server
+ char *krb5ccname = getenv ("KRB5CCNAME");
m_current = item;
- *m_proc << "smbclient -N -L ";
- *m_proc << KProcess::quote(item->text(0));
- *m_proc << " -W ";
- *m_proc << KProcess::quote(item->parent()->text(0));
- if (m_login != TQString::null)
- {
+ if (krb5ccname)
+ {
+ *m_proc << "smbclient -k -N -L ";
+ }
+ else
+ {
+ *m_proc << "smbclient -N -L ";
+ }
+ *m_proc << KProcess::quote (item->text (0));
+ *m_proc << " -W ";
+ *m_proc << KProcess::quote (item->parent ()->
+ text (0));
+ if (!krb5ccname)
+ {
*m_proc << " -A ";
- *m_proc << KProcess::quote(m_passwdFile->name());
- }
+ *m_proc << KProcess::
+ quote (m_passwdFile->name ());
+ }
startProcess(ShareListing);
}
}