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:
ContextState() : textAlign(TextAlign::START),
textBaseline(TextBaseline::ALPHABETIC),
shadowColor(0),
lineWidth(1.0f),
miterLimit(10.0f),
globalAlpha(1.0f),

View File

@ -101,6 +101,10 @@ WebGLContextOptions::WebGLContextOptions()
WebGLContext::WebGLContext()
: WebGLContextUnchecked(nullptr)
, mBufferFetchingIsVerified(false)
, mBufferFetchingHasPerVertex(false)
, mMaxFetchedVertices(0)
, mMaxFetchedInstances(0)
, mBypassShaderValidation(false)
, mGLMaxSamples(1)
, mNeedsFakeNoAlpha(false)
@ -113,6 +117,12 @@ WebGLContext::WebGLContext()
mShouldPresent = true;
mResetLayer = true;
mOptionsFrozen = false;
mMinCapability = false;
mDisableExtensions = false;
mIsMesa = false;
mEmitContextLostErrorOnce = false;
mWebGLError = 0;
mUnderlyingGLError = 0;
mActiveTexture = 0;
@ -128,6 +138,17 @@ WebGLContext::WebGLContext()
mFakeVertexAttrib0BufferObject = 0;
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;
mViewportY = 0;
mViewportWidth = 0;

View File

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

View File

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

View File

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

View File

@ -256,7 +256,20 @@ private:
bool mAllowControlCharacters;
// 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);
/**
@ -384,7 +397,7 @@ private:
EventMessage mEventMessage;
bool mIsSynthesizedEvent;
CompositionEventDispatcher() {};
CompositionEventDispatcher() : mIsSynthesizedEvent(false) {};
};
/**

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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