| Index: src/pdf/SkPDFStream.h
 | 
| diff --git a/src/pdf/SkPDFStream.h b/src/pdf/SkPDFStream.h
 | 
| index d29d9b19badc352071c0866173b282d166af8888..c5961d42b1a6b0d45075d6350070206adbdd182c 100644
 | 
| --- a/src/pdf/SkPDFStream.h
 | 
| +++ b/src/pdf/SkPDFStream.h
 | 
| @@ -27,50 +27,38 @@ class SkPDFStream : public SkPDFDict {
 | 
|  public:
 | 
|      /** Create a PDF stream. A Length entry is automatically added to the
 | 
|       *  stream dictionary.
 | 
| -     *  @param data   The data part of the stream.  Will be ref()ed.
 | 
| +     *  @param data   The data part of the stream.  Will not take ownership.
 | 
|       */
 | 
| -    explicit SkPDFStream(SkData* data);
 | 
| +    explicit SkPDFStream(SkData* data) { this->setData(data); }
 | 
|  
 | 
|      /** Create a PDF stream. A Length entry is automatically added to the
 | 
|       *  stream dictionary.
 | 
| -     *  @param stream The data part of the stream.  Will be duplicate()d.
 | 
| +     *  @param stream The data part of the stream.  Will not take ownership.
 | 
|       */
 | 
| -    explicit SkPDFStream(SkStream* stream);
 | 
| +    explicit SkPDFStream(SkStream* stream) { this->setData(stream); }
 | 
|  
 | 
|      virtual ~SkPDFStream();
 | 
|  
 | 
|      // The SkPDFObject interface.
 | 
|      void emitObject(SkWStream* stream,
 | 
|                      const SkPDFObjNumMap& objNumMap,
 | 
| -                    const SkPDFSubstituteMap& substitutes) override;
 | 
| +                    const SkPDFSubstituteMap& substitutes) const override;
 | 
|  
 | 
|  protected:
 | 
| -    enum State {
 | 
| -        kUnused_State,         //!< The stream hasn't been requested yet.
 | 
| -        kNoCompression_State,  //!< The stream's been requested in an
 | 
| -                               //   uncompressed form.
 | 
| -        kCompressed_State,     //!< The stream's already been compressed.
 | 
| -    };
 | 
| -
 | 
|      /* Create a PDF stream with no data.  The setData method must be called to
 | 
|       * set the data.
 | 
|       */
 | 
| -    SkPDFStream();
 | 
| +    SkPDFStream() {}
 | 
|  
 | 
| -    void setData(SkData* data);
 | 
| +    /** Only call this function once. */
 | 
|      void setData(SkStream* stream);
 | 
| -
 | 
| -    size_t dataSize() const;
 | 
| -
 | 
| -    void setState(State state) {
 | 
| -        fState = state;
 | 
| +    void setData(SkData* data) {
 | 
| +        SkMemoryStream memoryStream(data);
 | 
| +        this->setData(&memoryStream);
 | 
|      }
 | 
|  
 | 
|  private:
 | 
| -    // Indicates what form (or if) the stream has been requested.
 | 
| -    State fState;
 | 
| -
 | 
| -    SkAutoTDelete<SkStreamRewindable> fDataStream;
 | 
| +    SkAutoTDelete<SkStreamRewindable> fCompressedData;
 | 
|  
 | 
|      typedef SkPDFDict INHERITED;
 | 
|  };
 | 
| 
 |