drop_extra_printingcontext_calls_to_newpage_pagedone.patch 20 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511
  1. From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
  2. From: Alan Screen <[email protected]>
  3. Date: Wed, 5 Jan 2022 23:15:29 +0000
  4. Subject: Drop extra PrintingContext calls to NewPage/PageDone
  5. When system calls were refactored out of PrintedDocument in
  6. https://crrev.com/948253, there were extra calls to PrintingContext
  7. NewPage() and PageDone() left in PrintedDocument::RenderPrintedDocument.
  8. These had no effect on Windows or Linux, but caused an issue for macOS.
  9. This was undetected by tests which use TestPrintingContext, and would
  10. only be detectable if a test was capable of using system drivers (which
  11. generally does not occur on the bots). Adding a test to detect this is
  12. difficult at this time, but should be easier to do once later portions
  13. of the out-of-process print drivers commit chains fill in more testing
  14. capabilities. At that point it should be easier to fire off a request
  15. to have the macOS Preview be the output. https://crbug.com/1284745
  16. has been filed to capture this needed effort.
  17. Remove NewPage()/PageDone() as common methods to override from
  18. PrintingContext and make these specific to macOS only. Update the
  19. various implementations of PrintingContext::PrintDocument() to include
  20. the aborted and in-print-job checks that were previously in all
  21. NewPage() implementations. The same corresponding checks from
  22. PageDone() can be handled by PrintedDocument::RenderPrintedDocument()
  23. and PrintedDocumentWin::RenderPrintedPage(). There is no concern about
  24. `in_print_job_` having changed during the lifetime of
  25. RenderPrintedDocument()/RenderPrintedPage(), so just add extra checks
  26. against printing having been asynchronouly aborted before allowing a
  27. final successful return.
  28. Bug: 1283651
  29. Change-Id: I52992bc7550dd25d4ad9a1dc633c7d9452a27bb1
  30. Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3367333
  31. Reviewed-by: Lei Zhang <[email protected]>
  32. Commit-Queue: Alan Screen <[email protected]>
  33. Cr-Commit-Position: refs/heads/main@{#955936}
  34. diff --git a/chrome/browser/printing/print_job_worker.cc b/chrome/browser/printing/print_job_worker.cc
  35. index 4283a5743c695a7376722f80925722d9e7a6496e..992a59c32ea082e3593c0183819d1b174fc8db7a 100644
  36. --- a/chrome/browser/printing/print_job_worker.cc
  37. +++ b/chrome/browser/printing/print_job_worker.cc
  38. @@ -524,12 +524,6 @@ void PrintJobWorker::SpoolPage(PrintedPage* page) {
  39. DCHECK(task_runner_->RunsTasksInCurrentSequence());
  40. DCHECK_NE(page_number_, PageNumber::npos());
  41. - // Preprocess.
  42. - if (printing_context_->NewPage() != mojom::ResultCode::kSuccess) {
  43. - OnFailure();
  44. - return;
  45. - }
  46. -
  47. // Actual printing.
  48. if (document_->RenderPrintedPage(*page, printing_context_.get()) !=
  49. mojom::ResultCode::kSuccess) {
  50. @@ -537,12 +531,6 @@ void PrintJobWorker::SpoolPage(PrintedPage* page) {
  51. return;
  52. }
  53. - // Postprocess.
  54. - if (printing_context_->PageDone() != mojom::ResultCode::kSuccess) {
  55. - OnFailure();
  56. - return;
  57. - }
  58. -
  59. // Signal everyone that the page is printed.
  60. DCHECK(print_job_);
  61. print_job_->PostTask(FROM_HERE,
  62. diff --git a/printing/emf_win_unittest.cc b/printing/emf_win_unittest.cc
  63. index e830a1017f2262d2d1c226aa16d41a6ffe53aadf..7daa9f9bedd664123d7590b9831169e99688b9c9 100644
  64. --- a/printing/emf_win_unittest.cc
  65. +++ b/printing/emf_win_unittest.cc
  66. @@ -115,7 +115,6 @@ TEST_F(EmfPrintingTest, Enumerate) {
  67. // current directory.
  68. // TODO(maruel): Clean the .PRN file generated in current directory.
  69. context.NewDocument(u"EmfTest.Enumerate");
  70. - context.NewPage();
  71. // Process one at a time.
  72. RECT page_bounds = emf.GetPageBounds(1).ToRECT();
  73. Emf::Enumerator emf_enum(emf, context.context(), &page_bounds);
  74. @@ -129,7 +128,6 @@ TEST_F(EmfPrintingTest, Enumerate) {
  75. EXPECT_TRUE(itr->SafePlayback(&emf_enum.context_))
  76. << " index: " << index << " type: " << itr->record()->iType;
  77. }
  78. - context.PageDone();
  79. context.DocumentDone();
  80. }
  81. diff --git a/printing/printed_document.cc b/printing/printed_document.cc
  82. index 54dd798f4c76c34fd6414f68d3ad11a15c1673af..81ebe973fc6a99d66f5d8792aa19e01764f33d3f 100644
  83. --- a/printing/printed_document.cc
  84. +++ b/printing/printed_document.cc
  85. @@ -187,17 +187,18 @@ const MetafilePlayer* PrintedDocument::GetMetafile() {
  86. mojom::ResultCode PrintedDocument::RenderPrintedDocument(
  87. PrintingContext* context) {
  88. - mojom::ResultCode result = context->NewPage();
  89. + base::AutoLock lock(lock_);
  90. + mojom::ResultCode result = context->PrintDocument(
  91. + *GetMetafile(), *immutable_.settings_, mutable_.expected_page_count_);
  92. if (result != mojom::ResultCode::kSuccess)
  93. return result;
  94. - {
  95. - base::AutoLock lock(lock_);
  96. - result = context->PrintDocument(*GetMetafile(), *immutable_.settings_,
  97. - mutable_.expected_page_count_);
  98. - if (result != mojom::ResultCode::kSuccess)
  99. - return result;
  100. - }
  101. - return context->PageDone();
  102. +
  103. + // Beware of any asynchronous aborts of the print job that happened during
  104. + // printing.
  105. + if (context->PrintingAborted())
  106. + return mojom::ResultCode::kCanceled;
  107. +
  108. + return mojom::ResultCode::kSuccess;
  109. }
  110. bool PrintedDocument::IsComplete() const {
  111. diff --git a/printing/printed_document_win.cc b/printing/printed_document_win.cc
  112. index 4024150677fb64f8f8c9d53dfa73cf709c819a7c..8e34b288ec518c4e2d0c5d8113f38440ad2c648b 100644
  113. --- a/printing/printed_document_win.cc
  114. +++ b/printing/printed_document_win.cc
  115. @@ -24,8 +24,17 @@ mojom::ResultCode PrintedDocument::RenderPrintedPage(
  116. #endif
  117. DCHECK(context);
  118. - return context->RenderPage(page,
  119. - immutable_.settings_->page_setup_device_units());
  120. + mojom::ResultCode result = context->RenderPage(
  121. + page, immutable_.settings_->page_setup_device_units());
  122. + if (result != mojom::ResultCode::kSuccess)
  123. + return result;
  124. +
  125. + // Beware of any asynchronous aborts of the print job that happened during
  126. + // printing.
  127. + if (context->PrintingAborted())
  128. + return mojom::ResultCode::kCanceled;
  129. +
  130. + return mojom::ResultCode::kSuccess;
  131. }
  132. } // namespace printing
  133. diff --git a/printing/printing_context.h b/printing/printing_context.h
  134. index e87170e6957733f06bcc296bcca3fc331557ed46..e196a7d448ca41ea02d523a4de410dedf4298b5e 100644
  135. --- a/printing/printing_context.h
  136. +++ b/printing/printing_context.h
  137. @@ -122,18 +122,12 @@ class COMPONENT_EXPORT(PRINTING) PrintingContext {
  138. virtual mojom::ResultCode NewDocument(
  139. const std::u16string& document_name) = 0;
  140. - // Starts a new page.
  141. - virtual mojom::ResultCode NewPage() = 0;
  142. -
  143. #if defined(OS_WIN)
  144. // Renders a page.
  145. virtual mojom::ResultCode RenderPage(const PrintedPage& page,
  146. const PageSetup& page_setup) = 0;
  147. #endif
  148. - // Closes the printed page.
  149. - virtual mojom::ResultCode PageDone() = 0;
  150. -
  151. // Prints the document contained in `metafile`.
  152. virtual mojom::ResultCode PrintDocument(const MetafilePlayer& metafile,
  153. const PrintSettings& settings,
  154. @@ -178,6 +172,8 @@ class COMPONENT_EXPORT(PRINTING) PrintingContext {
  155. // Reinitializes the settings for object reuse.
  156. void ResetSettings();
  157. + bool PrintingAborted() const { return abort_printing_; }
  158. +
  159. int job_id() const { return job_id_; }
  160. protected:
  161. diff --git a/printing/printing_context_android.cc b/printing/printing_context_android.cc
  162. index c28a40eb0a9ce0058d9f85948eda5f83d0c64791..5b2f096cb2a705e7c4c7ebbeddbf93cac1b9eafb 100644
  163. --- a/printing/printing_context_android.cc
  164. +++ b/printing/printing_context_android.cc
  165. @@ -213,30 +213,13 @@ mojom::ResultCode PrintingContextAndroid::NewDocument(
  166. return mojom::ResultCode::kSuccess;
  167. }
  168. -mojom::ResultCode PrintingContextAndroid::NewPage() {
  169. - if (abort_printing_)
  170. - return mojom::ResultCode::kCanceled;
  171. - DCHECK(in_print_job_);
  172. -
  173. - // Intentional No-op.
  174. -
  175. - return mojom::ResultCode::kSuccess;
  176. -}
  177. -
  178. -mojom::ResultCode PrintingContextAndroid::PageDone() {
  179. - if (abort_printing_)
  180. - return mojom::ResultCode::kCanceled;
  181. - DCHECK(in_print_job_);
  182. -
  183. - // Intentional No-op.
  184. -
  185. - return mojom::ResultCode::kSuccess;
  186. -}
  187. -
  188. mojom::ResultCode PrintingContextAndroid::PrintDocument(
  189. const MetafilePlayer& metafile,
  190. const PrintSettings& settings,
  191. uint32_t num_pages) {
  192. + if (abort_printing_)
  193. + return mojom::ResultCode::kCanceled;
  194. + DCHECK(in_print_job_);
  195. DCHECK(is_file_descriptor_valid());
  196. return metafile.SaveToFileDescriptor(fd_) ? mojom::ResultCode::kSuccess
  197. diff --git a/printing/printing_context_android.h b/printing/printing_context_android.h
  198. index 676d98949da675e3283969dd3c9c61028dc1c7b5..b4f2f25edec45f91f241b0b1a7bc73b3f51af252 100644
  199. --- a/printing/printing_context_android.h
  200. +++ b/printing/printing_context_android.h
  201. @@ -60,8 +60,6 @@ class COMPONENT_EXPORT(PRINTING) PrintingContextAndroid
  202. mojom::ResultCode UpdatePrinterSettings(
  203. const PrinterSettings& printer_settings) override;
  204. mojom::ResultCode NewDocument(const std::u16string& document_name) override;
  205. - mojom::ResultCode NewPage() override;
  206. - mojom::ResultCode PageDone() override;
  207. mojom::ResultCode PrintDocument(const MetafilePlayer& metafile,
  208. const PrintSettings& settings,
  209. uint32_t num_pages) override;
  210. diff --git a/printing/printing_context_chromeos.cc b/printing/printing_context_chromeos.cc
  211. index d996c3e1f7b2d9f96f5c50aadff67f8273c7e760..670df66ae406fa883f801682de699aab16779591 100644
  212. --- a/printing/printing_context_chromeos.cc
  213. +++ b/printing/printing_context_chromeos.cc
  214. @@ -402,32 +402,14 @@ mojom::ResultCode PrintingContextChromeos::NewDocument(
  215. return mojom::ResultCode::kSuccess;
  216. }
  217. -mojom::ResultCode PrintingContextChromeos::NewPage() {
  218. - if (abort_printing_)
  219. - return mojom::ResultCode::kCanceled;
  220. -
  221. - DCHECK(in_print_job_);
  222. -
  223. - // Intentional No-op.
  224. -
  225. - return mojom::ResultCode::kSuccess;
  226. -}
  227. -
  228. -mojom::ResultCode PrintingContextChromeos::PageDone() {
  229. - if (abort_printing_)
  230. - return mojom::ResultCode::kCanceled;
  231. -
  232. - DCHECK(in_print_job_);
  233. -
  234. - // Intentional No-op.
  235. -
  236. - return mojom::ResultCode::kSuccess;
  237. -}
  238. -
  239. mojom::ResultCode PrintingContextChromeos::PrintDocument(
  240. const MetafilePlayer& metafile,
  241. const PrintSettings& settings,
  242. uint32_t num_pages) {
  243. + if (abort_printing_)
  244. + return mojom::ResultCode::kCanceled;
  245. + DCHECK(in_print_job_);
  246. +
  247. #if defined(USE_CUPS)
  248. std::vector<char> buffer;
  249. if (!metafile.GetDataAsVector(&buffer))
  250. diff --git a/printing/printing_context_chromeos.h b/printing/printing_context_chromeos.h
  251. index 77353372b2c6e003428d37ab634167e8dc824fa4..06cb16c8a569a4d90ccdccc5fefcaaf527e49f5f 100644
  252. --- a/printing/printing_context_chromeos.h
  253. +++ b/printing/printing_context_chromeos.h
  254. @@ -39,8 +39,6 @@ class COMPONENT_EXPORT(PRINTING) PrintingContextChromeos
  255. mojom::ResultCode UpdatePrinterSettings(
  256. const PrinterSettings& printer_settings) override;
  257. mojom::ResultCode NewDocument(const std::u16string& document_name) override;
  258. - mojom::ResultCode NewPage() override;
  259. - mojom::ResultCode PageDone() override;
  260. mojom::ResultCode PrintDocument(const MetafilePlayer& metafile,
  261. const PrintSettings& settings,
  262. uint32_t num_pages) override;
  263. diff --git a/printing/printing_context_linux.cc b/printing/printing_context_linux.cc
  264. index c5adfa317747cda3d370a2ace52d843662f4ce91..204cec8311bec69674f1da2223e8d6c4b5a13ba3 100644
  265. --- a/printing/printing_context_linux.cc
  266. +++ b/printing/printing_context_linux.cc
  267. @@ -151,30 +151,13 @@ mojom::ResultCode PrintingContextLinux::NewDocument(
  268. return mojom::ResultCode::kSuccess;
  269. }
  270. -mojom::ResultCode PrintingContextLinux::NewPage() {
  271. - if (abort_printing_)
  272. - return mojom::ResultCode::kCanceled;
  273. - DCHECK(in_print_job_);
  274. -
  275. - // Intentional No-op.
  276. -
  277. - return mojom::ResultCode::kSuccess;
  278. -}
  279. -
  280. -mojom::ResultCode PrintingContextLinux::PageDone() {
  281. - if (abort_printing_)
  282. - return mojom::ResultCode::kCanceled;
  283. - DCHECK(in_print_job_);
  284. -
  285. - // Intentional No-op.
  286. -
  287. - return mojom::ResultCode::kSuccess;
  288. -}
  289. -
  290. mojom::ResultCode PrintingContextLinux::PrintDocument(
  291. const MetafilePlayer& metafile,
  292. const PrintSettings& settings,
  293. uint32_t num_pages) {
  294. + if (abort_printing_)
  295. + return mojom::ResultCode::kCanceled;
  296. + DCHECK(in_print_job_);
  297. DCHECK(print_dialog_);
  298. // TODO(crbug.com/1252685) Plumb error code back from
  299. // `PrintDialogGtkInterface`.
  300. diff --git a/printing/printing_context_linux.h b/printing/printing_context_linux.h
  301. index 17d768a24141954df80bed3c5dd6735c34115195..653170ba60e8341c972cb0126109d48394e0de7b 100644
  302. --- a/printing/printing_context_linux.h
  303. +++ b/printing/printing_context_linux.h
  304. @@ -45,8 +45,6 @@ class COMPONENT_EXPORT(PRINTING) PrintingContextLinux : public PrintingContext {
  305. mojom::ResultCode UpdatePrinterSettings(
  306. const PrinterSettings& printer_settings) override;
  307. mojom::ResultCode NewDocument(const std::u16string& document_name) override;
  308. - mojom::ResultCode NewPage() override;
  309. - mojom::ResultCode PageDone() override;
  310. mojom::ResultCode PrintDocument(const MetafilePlayer& metafile,
  311. const PrintSettings& settings,
  312. uint32_t num_pages) override;
  313. diff --git a/printing/printing_context_mac.h b/printing/printing_context_mac.h
  314. index 85363bd922bf0ab2630e3d5f350de0c58792963a..221019f5df71e1d66accbf2ea2d161bd1125666f 100644
  315. --- a/printing/printing_context_mac.h
  316. +++ b/printing/printing_context_mac.h
  317. @@ -35,8 +35,6 @@ class COMPONENT_EXPORT(PRINTING) PrintingContextMac : public PrintingContext {
  318. mojom::ResultCode UpdatePrinterSettings(
  319. const PrinterSettings& printer_settings) override;
  320. mojom::ResultCode NewDocument(const std::u16string& document_name) override;
  321. - mojom::ResultCode NewPage() override;
  322. - mojom::ResultCode PageDone() override;
  323. mojom::ResultCode PrintDocument(const MetafilePlayer& metafile,
  324. const PrintSettings& settings,
  325. uint32_t num_pages) override;
  326. @@ -105,6 +103,12 @@ class COMPONENT_EXPORT(PRINTING) PrintingContextMac : public PrintingContext {
  327. // Returns true is the pair is set.
  328. bool SetKeyValue(base::StringPiece key, base::StringPiece value);
  329. + // Starts a new page.
  330. + mojom::ResultCode NewPage();
  331. +
  332. + // Closes the printed page.
  333. + mojom::ResultCode PageDone();
  334. +
  335. // The native print info object.
  336. base::scoped_nsobject<NSPrintInfo> print_info_;
  337. diff --git a/printing/printing_context_no_system_dialog.cc b/printing/printing_context_no_system_dialog.cc
  338. index c10123f35b11e1600c813080585a2282d775dba1..253507fcee5476f497421316bc42a0794f97b12b 100644
  339. --- a/printing/printing_context_no_system_dialog.cc
  340. +++ b/printing/printing_context_no_system_dialog.cc
  341. @@ -98,26 +98,6 @@ mojom::ResultCode PrintingContextNoSystemDialog::NewDocument(
  342. return mojom::ResultCode::kSuccess;
  343. }
  344. -mojom::ResultCode PrintingContextNoSystemDialog::NewPage() {
  345. - if (abort_printing_)
  346. - return mojom::ResultCode::kCanceled;
  347. - DCHECK(in_print_job_);
  348. -
  349. - // Intentional No-op.
  350. -
  351. - return mojom::ResultCode::kSuccess;
  352. -}
  353. -
  354. -mojom::ResultCode PrintingContextNoSystemDialog::PageDone() {
  355. - if (abort_printing_)
  356. - return mojom::ResultCode::kCanceled;
  357. - DCHECK(in_print_job_);
  358. -
  359. - // Intentional No-op.
  360. -
  361. - return mojom::ResultCode::kSuccess;
  362. -}
  363. -
  364. mojom::ResultCode PrintingContextNoSystemDialog::PrintDocument(
  365. const MetafilePlayer& metafile,
  366. const PrintSettings& settings,
  367. diff --git a/printing/printing_context_no_system_dialog.h b/printing/printing_context_no_system_dialog.h
  368. index 2753d7ba7a09e1c5e88c1eb21a9b146034ea53f5..cb0d0b8c12535c83dbfc07ecb2817f0504b4a8ba 100644
  369. --- a/printing/printing_context_no_system_dialog.h
  370. +++ b/printing/printing_context_no_system_dialog.h
  371. @@ -32,8 +32,6 @@ class COMPONENT_EXPORT(PRINTING) PrintingContextNoSystemDialog
  372. mojom::ResultCode UpdatePrinterSettings(
  373. const PrinterSettings& printer_settings) override;
  374. mojom::ResultCode NewDocument(const std::u16string& document_name) override;
  375. - mojom::ResultCode NewPage() override;
  376. - mojom::ResultCode PageDone() override;
  377. mojom::ResultCode PrintDocument(const MetafilePlayer& metafile,
  378. const PrintSettings& settings,
  379. uint32_t num_pages) override;
  380. diff --git a/printing/printing_context_win.cc b/printing/printing_context_win.cc
  381. index 0addb52cd2f65b6f05b7cfb7cf8602baaf592541..4f1fb12619fc9bee0cce104ba60621008284d675 100644
  382. --- a/printing/printing_context_win.cc
  383. +++ b/printing/printing_context_win.cc
  384. @@ -366,18 +366,6 @@ mojom::ResultCode PrintingContextWin::NewDocument(
  385. return mojom::ResultCode::kSuccess;
  386. }
  387. -mojom::ResultCode PrintingContextWin::NewPage() {
  388. - if (abort_printing_)
  389. - return mojom::ResultCode::kCanceled;
  390. - DCHECK(context_);
  391. - DCHECK(in_print_job_);
  392. -
  393. - // Intentional No-op. MetafileSkia::SafePlayback takes care of calling
  394. - // ::StartPage().
  395. -
  396. - return mojom::ResultCode::kSuccess;
  397. -}
  398. -
  399. mojom::ResultCode PrintingContextWin::RenderPage(const PrintedPage& page,
  400. const PageSetup& page_setup) {
  401. if (abort_printing_)
  402. @@ -416,17 +404,6 @@ mojom::ResultCode PrintingContextWin::RenderPage(const PrintedPage& page,
  403. return mojom::ResultCode::kSuccess;
  404. }
  405. -mojom::ResultCode PrintingContextWin::PageDone() {
  406. - if (abort_printing_)
  407. - return mojom::ResultCode::kCanceled;
  408. - DCHECK(in_print_job_);
  409. -
  410. - // Intentional No-op. MetafileSkia::SafePlayback takes care of calling
  411. - // ::EndPage().
  412. -
  413. - return mojom::ResultCode::kSuccess;
  414. -}
  415. -
  416. mojom::ResultCode PrintingContextWin::PrintDocument(
  417. const MetafilePlayer& metafile,
  418. const PrintSettings& settings,
  419. diff --git a/printing/printing_context_win.h b/printing/printing_context_win.h
  420. index 700bfe2c744cc18b1be25b9db02dd690b5e306f9..babd443a1586c92a70ff6362a824e29a6395fae2 100644
  421. --- a/printing/printing_context_win.h
  422. +++ b/printing/printing_context_win.h
  423. @@ -35,10 +35,8 @@ class COMPONENT_EXPORT(PRINTING) PrintingContextWin : public PrintingContext {
  424. mojom::ResultCode UpdatePrinterSettings(
  425. const PrinterSettings& printer_settings) override;
  426. mojom::ResultCode NewDocument(const std::u16string& document_name) override;
  427. - mojom::ResultCode NewPage() override;
  428. mojom::ResultCode RenderPage(const PrintedPage& page,
  429. const PageSetup& page_setup) override;
  430. - mojom::ResultCode PageDone() override;
  431. mojom::ResultCode PrintDocument(const MetafilePlayer& metafile,
  432. const PrintSettings& settings,
  433. uint32_t num_pages) override;
  434. diff --git a/printing/test_printing_context.cc b/printing/test_printing_context.cc
  435. index 4f0bf0ae891164120d36c79a7df98845f38e55de..208e8a16b5648383ff26d8dec4a15f6485ef4454 100644
  436. --- a/printing/test_printing_context.cc
  437. +++ b/printing/test_printing_context.cc
  438. @@ -116,15 +116,6 @@ mojom::ResultCode TestPrintingContext::NewDocument(
  439. return mojom::ResultCode::kSuccess;
  440. }
  441. -mojom::ResultCode TestPrintingContext::NewPage() {
  442. - if (abort_printing_)
  443. - return mojom::ResultCode::kCanceled;
  444. - DCHECK(in_print_job_);
  445. -
  446. - // No-op.
  447. - return mojom::ResultCode::kSuccess;
  448. -}
  449. -
  450. #if defined(OS_WIN)
  451. mojom::ResultCode TestPrintingContext::RenderPage(const PrintedPage& page,
  452. const PageSetup& page_setup) {
  453. @@ -138,15 +129,6 @@ mojom::ResultCode TestPrintingContext::RenderPage(const PrintedPage& page,
  454. }
  455. #endif // defined(OS_WIN)
  456. -mojom::ResultCode TestPrintingContext::PageDone() {
  457. - if (abort_printing_)
  458. - return mojom::ResultCode::kCanceled;
  459. - DCHECK(in_print_job_);
  460. -
  461. - // No-op.
  462. - return mojom::ResultCode::kSuccess;
  463. -}
  464. -
  465. mojom::ResultCode TestPrintingContext::PrintDocument(
  466. const MetafilePlayer& metafile,
  467. const PrintSettings& settings,
  468. diff --git a/printing/test_printing_context.h b/printing/test_printing_context.h
  469. index e2a0f906216f5bae2d05dd6efd6246257a3deea4..579a9269459470e8eac6e506d87503d828bed4cb 100644
  470. --- a/printing/test_printing_context.h
  471. +++ b/printing/test_printing_context.h
  472. @@ -58,12 +58,10 @@ class TestPrintingContext : public PrintingContext {
  473. mojom::ResultCode UpdatePrinterSettings(
  474. const PrinterSettings& printer_settings) override;
  475. mojom::ResultCode NewDocument(const std::u16string& document_name) override;
  476. - mojom::ResultCode NewPage() override;
  477. #if defined(OS_WIN)
  478. mojom::ResultCode RenderPage(const PrintedPage& page,
  479. const PageSetup& page_setup) override;
  480. #endif
  481. - mojom::ResultCode PageDone() override;
  482. mojom::ResultCode PrintDocument(const MetafilePlayer& metafile,
  483. const PrintSettings& settings,
  484. uint32_t num_pages) override;