summary: Bug 1231378 - part 5 - Fix uninitialized members of classes in dom/{workers,events,media,canvas}, r=smaug

This commit is contained in:
Andrea Marchesini 2016-01-12 18:16:59 +00:00
parent 2d7253a040
commit 39ad2edb6d
15 changed files with 67 additions and 9 deletions

View File

@ -907,6 +907,7 @@ protected:
public: public:
ContextState() : textAlign(TextAlign::START), ContextState() : textAlign(TextAlign::START),
textBaseline(TextBaseline::ALPHABETIC), textBaseline(TextBaseline::ALPHABETIC),
shadowColor(0),
lineWidth(1.0f), lineWidth(1.0f),
miterLimit(10.0f), miterLimit(10.0f),
globalAlpha(1.0f), globalAlpha(1.0f),

View File

@ -101,6 +101,10 @@ WebGLContextOptions::WebGLContextOptions()
WebGLContext::WebGLContext() WebGLContext::WebGLContext()
: WebGLContextUnchecked(nullptr) : WebGLContextUnchecked(nullptr)
, mBufferFetchingIsVerified(false)
, mBufferFetchingHasPerVertex(false)
, mMaxFetchedVertices(0)
, mMaxFetchedInstances(0)
, mBypassShaderValidation(false) , mBypassShaderValidation(false)
, mGLMaxSamples(1) , mGLMaxSamples(1)
, mNeedsFakeNoAlpha(false) , mNeedsFakeNoAlpha(false)
@ -113,6 +117,12 @@ WebGLContext::WebGLContext()
mShouldPresent = true; mShouldPresent = true;
mResetLayer = true; mResetLayer = true;
mOptionsFrozen = false; mOptionsFrozen = false;
mMinCapability = false;
mDisableExtensions = false;
mIsMesa = false;
mEmitContextLostErrorOnce = false;
mWebGLError = 0;
mUnderlyingGLError = 0;
mActiveTexture = 0; mActiveTexture = 0;
@ -128,6 +138,17 @@ WebGLContext::WebGLContext()
mFakeVertexAttrib0BufferObject = 0; mFakeVertexAttrib0BufferObject = 0;
mFakeVertexAttrib0BufferStatus = WebGLVertexAttrib0Status::Default; mFakeVertexAttrib0BufferStatus = WebGLVertexAttrib0Status::Default;
mStencilRefFront = 0;
mStencilRefBack = 0;
mStencilValueMaskFront = 0;
mStencilValueMaskBack = 0;
mStencilWriteMaskFront = 0;
mStencilWriteMaskBack = 0;
mDepthWriteMask = 0;
mStencilClearValue = 0;
mDepthClearValue = 0;
mContextLostErrorSet = false;
mViewportX = 0; mViewportX = 0;
mViewportY = 0; mViewportY = 0;
mViewportWidth = 0; mViewportWidth = 0;

View File

@ -20,6 +20,8 @@ WebGLFBAttachPoint::WebGLFBAttachPoint(WebGLFramebuffer* fb, GLenum attachmentPo
: mFB(fb) : mFB(fb)
, mAttachmentPoint(attachmentPoint) , mAttachmentPoint(attachmentPoint)
, mTexImageTarget(LOCAL_GL_NONE) , mTexImageTarget(LOCAL_GL_NONE)
, mTexImageLayer(0)
, mTexImageLevel(0)
{ } { }
WebGLFBAttachPoint::~WebGLFBAttachPoint() WebGLFBAttachPoint::~WebGLFBAttachPoint()

View File

@ -55,6 +55,7 @@ public:
AsyncEventDispatcher(dom::EventTarget* aTarget, nsIDOMEvent* aEvent) AsyncEventDispatcher(dom::EventTarget* aTarget, nsIDOMEvent* aEvent)
: mTarget(aTarget) : mTarget(aTarget)
, mEvent(aEvent) , mEvent(aEvent)
, mBubbles(false)
, mOnlyChromeDispatch(false) , mOnlyChromeDispatch(false)
{ {
} }

View File

@ -37,16 +37,19 @@ public:
} }
explicit TypedEventHandler(dom::EventHandlerNonNull* aHandler) explicit TypedEventHandler(dom::EventHandlerNonNull* aHandler)
: mBits(0)
{ {
Assign(aHandler, eNormal); Assign(aHandler, eNormal);
} }
explicit TypedEventHandler(dom::OnErrorEventHandlerNonNull* aHandler) explicit TypedEventHandler(dom::OnErrorEventHandlerNonNull* aHandler)
: mBits(0)
{ {
Assign(aHandler, eOnError); Assign(aHandler, eOnError);
} }
explicit TypedEventHandler(dom::OnBeforeUnloadEventHandlerNonNull* aHandler) explicit TypedEventHandler(dom::OnBeforeUnloadEventHandlerNonNull* aHandler)
: mBits(0)
{ {
Assign(aHandler, eOnBeforeUnload); Assign(aHandler, eOnBeforeUnload);
} }

View File

@ -256,7 +256,20 @@ private:
bool mAllowControlCharacters; bool mAllowControlCharacters;
// Hide the default constructor and copy constructor. // Hide the default constructor and copy constructor.
TextComposition() {} TextComposition()
: mPresContext(nullptr)
, mNativeContext(nullptr)
, mCompositionStartOffset(0)
, mCompositionTargetOffset(0)
, mIsSynthesizedForTests(false)
, mIsComposing(false)
, mIsEditorHandlingEvent(false)
, mIsRequestingCommit(false)
, mIsRequestingCancel(false)
, mRequestedToCommitOrCancel(false)
, mWasNativeCompositionEndEventDiscarded(false)
, mAllowControlCharacters(false)
{}
TextComposition(const TextComposition& aOther); TextComposition(const TextComposition& aOther);
/** /**
@ -384,7 +397,7 @@ private:
EventMessage mEventMessage; EventMessage mEventMessage;
bool mIsSynthesizedEvent; bool mIsSynthesizedEvent;
CompositionEventDispatcher() {}; CompositionEventDispatcher() : mIsSynthesizedEvent(false) {};
}; };
/** /**

View File

@ -46,7 +46,8 @@ Gamepad::Gamepad(nsISupports* aParent,
mMapping(aMapping), mMapping(aMapping),
mConnected(true), mConnected(true),
mButtons(aNumButtons), mButtons(aNumButtons),
mAxes(aNumAxes) mAxes(aNumAxes),
mTimestamp(0)
{ {
for (unsigned i = 0; i < aNumButtons; i++) { for (unsigned i = 0; i < aNumButtons; i++) {
mButtons.InsertElementAt(i, new GamepadButton(mParent)); mButtons.InsertElementAt(i, new GamepadButton(mParent));

View File

@ -318,7 +318,7 @@ protected:
class CryptoTrack class CryptoTrack
{ {
public: public:
CryptoTrack() : mValid(false) {} CryptoTrack() : mValid(false), mMode(0), mIVSize(0) {}
bool mValid; bool mValid;
int32_t mMode; int32_t mMode;
int32_t mIVSize; int32_t mIVSize;

View File

@ -62,7 +62,12 @@ class MediaChannelStatistics;
*/ */
class MediaChannelStatistics { class MediaChannelStatistics {
public: public:
MediaChannelStatistics() { Reset(); } MediaChannelStatistics()
: mAccumulatedBytes(0)
, mIsStarted(false)
{
Reset();
}
explicit MediaChannelStatistics(MediaChannelStatistics * aCopyFrom) explicit MediaChannelStatistics(MediaChannelStatistics * aCopyFrom)
{ {

View File

@ -1044,7 +1044,7 @@ class ProcessedMediaStream : public MediaStream
{ {
public: public:
explicit ProcessedMediaStream(DOMMediaStream* aWrapper) explicit ProcessedMediaStream(DOMMediaStream* aWrapper)
: MediaStream(aWrapper), mAutofinish(false) : MediaStream(aWrapper), mAutofinish(false), mCycleMarker(0)
{} {}
// Control API. // Control API.

View File

@ -160,7 +160,8 @@ public:
}; };
StreamBuffer() StreamBuffer()
: mTracksKnownTime(0) : mGraphRate(0)
, mTracksKnownTime(0)
, mForgottenTime(0) , mForgottenTime(0)
, mTracksDirty(false) , mTracksDirty(false)
#ifdef DEBUG #ifdef DEBUG

View File

@ -210,6 +210,14 @@ protected:
*/ */
class MediaEnginePrefs { class MediaEnginePrefs {
public: public:
MediaEnginePrefs()
: mWidth(0)
, mHeight(0)
, mFPS(0)
, mMinFPS(0)
, mFreq(0)
{}
int32_t mWidth; int32_t mWidth;
int32_t mHeight; int32_t mHeight;
int32_t mFPS; int32_t mFPS;

View File

@ -10,6 +10,7 @@
#include "nsDataHashtable.h" #include "nsDataHashtable.h"
#include "nsHashKeys.h" #include "nsHashKeys.h"
#include "nsTArray.h" #include "nsTArray.h"
#include "nsIDOMWakeLockListener.h"
#include "nsIPowerManagerService.h" #include "nsIPowerManagerService.h"
#include "mozilla/Observer.h" #include "mozilla/Observer.h"
#include "Types.h" #include "Types.h"
@ -73,7 +74,7 @@ private:
static StaticRefPtr<PowerManagerService> sSingleton; static StaticRefPtr<PowerManagerService> sSingleton;
nsTArray<nsCOMPtr<nsIDOMMozWakeLockListener> > mWakeLockListeners; nsTArray<nsCOMPtr<nsIDOMMozWakeLockListener>> mWakeLockListeners;
int32_t mWatchdogTimeoutSecs; int32_t mWatchdogTimeoutSecs;
}; };

View File

@ -3925,6 +3925,7 @@ WorkerPrivate::WorkerPrivate(JSContext* aCx,
, mPeriodicGCTimerRunning(false) , mPeriodicGCTimerRunning(false)
, mIdleGCTimerRunning(false) , mIdleGCTimerRunning(false)
, mWorkerScriptExecutedSuccessfully(false) , mWorkerScriptExecutedSuccessfully(false)
, mOnLine(false)
{ {
MOZ_ASSERT_IF(!IsDedicatedWorker(), !aWorkerName.IsVoid()); MOZ_ASSERT_IF(!IsDedicatedWorker(), !aWorkerName.IsVoid());
MOZ_ASSERT_IF(IsDedicatedWorker(), aWorkerName.IsEmpty()); MOZ_ASSERT_IF(IsDedicatedWorker(), aWorkerName.IsEmpty());

View File

@ -195,8 +195,8 @@ nsJARInputThunk::IsNonBlocking(bool *nonBlocking)
nsJARChannel::nsJARChannel() nsJARChannel::nsJARChannel()
: mOpened(false) : mOpened(false)
, mContentDisposition(0)
, mAppURI(nullptr) , mAppURI(nullptr)
, mContentDisposition(0)
, mContentLength(-1) , mContentLength(-1)
, mLoadFlags(LOAD_NORMAL) , mLoadFlags(LOAD_NORMAL)
, mStatus(NS_OK) , mStatus(NS_OK)