Blame SOURCES/0001-The-scheduler-could-crash-while-adding-an-IPP-Everyw.patch
|
|
1d75c0 |
diff --git a/scheduler/ipp.c b/scheduler/ipp.c
|
|
|
1d75c0 |
index 649995bb5..2396c9b58 100644
|
|
|
1d75c0 |
--- a/scheduler/ipp.c
|
|
|
1d75c0 |
+++ b/scheduler/ipp.c
|
|
|
1d75c0 |
@@ -4873,6 +4873,8 @@ copy_printer_attrs(
|
|
|
1d75c0 |
* and document-format attributes that may be provided by the client.
|
|
|
1d75c0 |
*/
|
|
|
1d75c0 |
|
|
|
1d75c0 |
+ _cupsRWLockRead(&printer->lock);
|
|
|
1d75c0 |
+
|
|
|
1d75c0 |
curtime = time(NULL);
|
|
|
1d75c0 |
|
|
|
1d75c0 |
if (!ra || cupsArrayFind(ra, "marker-change-time"))
|
|
|
1d75c0 |
@@ -5034,6 +5036,8 @@ copy_printer_attrs(
|
|
|
1d75c0 |
if (printer->ppd_attrs)
|
|
|
1d75c0 |
copy_attrs(con->response, printer->ppd_attrs, ra, IPP_TAG_ZERO, 0, NULL);
|
|
|
1d75c0 |
copy_attrs(con->response, CommonData, ra, IPP_TAG_ZERO, IPP_TAG_COPY, NULL);
|
|
|
1d75c0 |
+
|
|
|
1d75c0 |
+ _cupsRWUnlock(&printer->lock);
|
|
|
1d75c0 |
}
|
|
|
1d75c0 |
|
|
|
1d75c0 |
|