Add _decoder CHECK to VCMGenericDecoder constructor.

This should never be using a null decoder, but it looks like it's
crashing out in the field. Adding a CHECK to see if it catches any
interesting stack traces.

Also making the _decoder pointer const to show that it should never be
changing.

BUG=chromium:563299
R=stefan@webrtc.org

Review URL: https://codereview.webrtc.org/1485713002 .

Cr-Commit-Position: refs/heads/master@{#10843}
diff --git a/webrtc/modules/video_coding/generic_decoder.h b/webrtc/modules/video_coding/generic_decoder.h
index d79b5e5..1375996 100644
--- a/webrtc/modules/video_coding/generic_decoder.h
+++ b/webrtc/modules/video_coding/generic_decoder.h
@@ -65,7 +65,7 @@
 {
     friend class VCMCodecDataBase;
 public:
-    VCMGenericDecoder(VideoDecoder& decoder, bool isExternal = false);
+    VCMGenericDecoder(VideoDecoder* decoder, bool external);
     ~VCMGenericDecoder();
 
     /**
@@ -102,7 +102,7 @@
     VCMDecodedFrameCallback*    _callback;
     VCMFrameInformation         _frameInfos[kDecoderFrameMemoryLength];
     uint32_t                    _nextFrameInfoIdx;
-    VideoDecoder&               _decoder;
+    VideoDecoder* const         _decoder;
     VideoCodecType              _codecType;
     bool                        _isExternal;
     bool                        _keyFrameDecoded;