rpms/kdebase/devel kdebase-4.0.x-nsplugin.patch, NONE, 1.1 kdebase.spec, 1.296, 1.297
Than Ngo (than)
fedora-extras-commits at redhat.com
Mon Feb 18 15:13:05 UTC 2008
Author: than
Update of /cvs/extras/rpms/kdebase/devel
In directory cvs-int.fedora.redhat.com:/tmp/cvs-serv18747
Modified Files:
kdebase.spec
Added Files:
kdebase-4.0.x-nsplugin.patch
Log Message:
fix nsplugins hangs during login
kdebase-4.0.x-nsplugin.patch:
--- NEW FILE kdebase-4.0.x-nsplugin.patch ---
Index: apps/nsplugins/pluginscan.cpp
===================================================================
--- apps/nsplugins/pluginscan.cpp (Revision 776603)
+++ apps/nsplugins/pluginscan.cpp (Revision 776604)
@@ -284,9 +284,8 @@
KLibLoader::self()->unloadLibrary( QFile::encodeName(absFile) );
// create a QDataStream for our IPC pipe (to send plugin info back to the parent)
- FILE *write_pipe = fdopen(write_fd, "w");
QFile stream_file;
- stream_file.open(write_pipe, QIODevice::WriteOnly);
+ stream_file.open(write_fd, QIODevice::WriteOnly);
QDataStream stream(&stream_file);
// return the gathered info to the parent
@@ -361,20 +360,18 @@
QBuffer m_buffer;
m_buffer.open(QIODevice::WriteOnly);
- FILE *read_pipe = fdopen(pipes[0], "r");
QFile q_read_pipe;
- q_read_pipe.open(read_pipe, QIODevice::ReadOnly);
+ q_read_pipe.open(pipes[0], QIODevice::ReadOnly);
char *data = (char *)malloc(4096);
if (!data) continue;
// when the child closes, we'll get an EOF (size == 0)
- while (int size = q_read_pipe.read(data, 4096)) {
- if (size > 0)
- m_buffer.write(data, size);
- }
+ while (int size = q_read_pipe.read(data, 4096) > 0)
+ m_buffer.write(data, size);
free(data);
+ q_read_pipe.close();
close(pipes[0]); // we no longer need the pipe's reading end
// close the buffer and open for reading (from the start)
Index: apps/nsplugins/nspluginloader.cpp
===================================================================
--- apps/nsplugins/nspluginloader.cpp (Revision 776603)
+++ apps/nsplugins/nspluginloader.cpp (Revision 776604)
@@ -260,7 +260,9 @@
QString stripped = (*suffix).trimmed();
int p=0;
- for ( ; p<stripped.length() && stripped[p]=='.'; p++ );
+ for ( ; p<stripped.length() && stripped[p]=='.'; p++ ) {
+ ;
+ }
stripped = stripped.right( stripped.length()-p );
// add filetype to list
Index: kdebase.spec
===================================================================
RCS file: /cvs/extras/rpms/kdebase/devel/kdebase.spec,v
retrieving revision 1.296
retrieving revision 1.297
diff -u -r1.296 -r1.297
--- kdebase.spec 4 Feb 2008 12:59:38 -0000 1.296
+++ kdebase.spec 18 Feb 2008 15:12:29 -0000 1.297
@@ -1,7 +1,7 @@
Summary: K Desktop Environment 4 - Core Files
Version: 4.0.1
-Release: 3%{?dist}
+Release: 4%{?dist}
%if 0%{?fedora} > 8
Name: kdebase
@@ -23,6 +23,8 @@
Group: User Interface/Desktops
URL: http://www.kde.org/
Source0: ftp://ftp.kde.org/pub/kde/stable/%{version}/src/kdebase-%{version}.tar.bz2
+# upstream pathes
+Patch100: kdebase-4.0.x-nsplugin.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
BuildRequires: kde-filesystem >= 4
@@ -128,6 +130,7 @@
%prep
%setup -q -n kdebase-%{version}
+%patch100 -p0 -b .nsplugin
%build
@@ -306,6 +309,9 @@
%changelog
+* Mon Feb 18 2008 Than Ngo <than at redhat.com> 4.0.1-4
+- fix nsplugins hangs during login
+
* Mon Feb 04 2008 Than Ngo <than at redhat.com> 4.0.1-3
- respin
More information about the fedora-extras-commits
mailing list