Index: printing/emf_win.h |
diff --git a/printing/emf_win.h b/printing/emf_win.h |
index c66e9f24b989745c59ec07296e6ee67bc0a86826..c9a8f604724766f774ba77dc3cb055b3f267a28e 100644 |
--- a/printing/emf_win.h |
+++ b/printing/emf_win.h |
@@ -77,9 +77,19 @@ class PRINTING_EXPORT Emf : public Metafile { |
unsigned int GetPageCount() const override; |
HDC context() const override; |
- bool Playback(HDC hdc, const RECT* rect) const override; |
+ |
bool SafePlayback(HDC hdc) const override; |
+ // "Plays" the EMF buffer in a HDC. It is the same effect as calling the |
+ // original GDI function that were called when recording the EMF. |rect| is in |
+ // "logical units" and is optional. If |rect| is NULL, the natural EMF bounds |
+ // are used. |
+ // Note: Windows has been known to have stack buffer overflow in its GDI |
+ // functions, whether used directly or indirectly through precompiled EMF |
+ // data. We have to accept the risk here. Since it is used only for printing, |
+ // it requires user intervention. |
+ bool Playback(HDC hdc, const RECT* rect) const; |
+ |
HENHMETAFILE emf() const { return emf_; } |
// Returns true if metafile contains alpha blend. |