Fix more bad implicit constructors in DOM

RESOLVED FIXED in mozilla35

Status

()

defect
RESOLVED FIXED
5 years ago
3 months ago

People

(Reporter: Ehsan, Assigned: Ehsan)

Tracking

unspecified
mozilla35
Points:
---
Dependency tree / graph
Bug Flags:
qe-verify -

Firefox Tracking Flags

(Not tracked)

Details

Attachments

(1 attachment)

Assignee

Description

5 years ago
No description provided.
Assignee

Updated

5 years ago
Assignee: nobody → ehsan.akhgari
Blocks: explicit
Assignee

Updated

5 years ago
Attachment #8482027 - Flags: review?(bugs)
Comment on attachment 8482027 [details] [diff] [review]
Fix more bad implicit constructors in DOM

(my review queue is already too long.)
Attachment #8482027 - Flags: review?(bugs) → review?(amarchesini)
Comment on attachment 8482027 [details] [diff] [review]
Fix more bad implicit constructors in DOM

Review of attachment 8482027 [details] [diff] [review]:
-----------------------------------------------------------------

Couple of nits :)

::: dom/archivereader/ArchiveRequest.cpp
@@ +22,5 @@
>  {
>  public:
>    NS_DECL_NSIRUNNABLE
>  
> +  explicit ArchiveRequestEvent(ArchiveRequest* request)

aRequest

::: dom/canvas/CanvasImageCache.cpp
@@ +60,5 @@
>  public:
>    typedef ImageCacheKey KeyType;
>    typedef const ImageCacheKey* KeyTypePointer;
>  
> +  explicit ImageCacheEntry(const KeyType *key) :

1. type* value
2. aValue

::: dom/canvas/CanvasRenderingContext2D.cpp
@@ +297,5 @@
>  {
>  public:
>    typedef CanvasRenderingContext2D::ContextState ContextState;
>  
> +  explicit AdjustedTarget(CanvasRenderingContext2D *ctx,

aValue

::: dom/canvas/TextMetrics.h
@@ +14,5 @@
>  
>  class TextMetrics MOZ_FINAL : public NonRefcountedDOMObject
>  {
>  public:
> +  explicit TextMetrics(float w) : width(w)

aValue

::: dom/canvas/WebGLBuffer.h
@@ +25,5 @@
>      , public LinkedListElement<WebGLBuffer>
>      , public WebGLContextBoundObject
>  {
>  public:
> +    explicit WebGLBuffer(WebGLContext *context);

aValue

::: dom/canvas/WebGLContext.cpp
@@ +1128,5 @@
>  namespace mozilla {
>  
>  class WebGLContextUserData : public LayerUserData {
>  public:
> +    explicit WebGLContextUserData(HTMLCanvasElement *aContent)

type* aValue

@@ +1509,5 @@
>  {
>      nsRefPtr<WebGLContext> mContext;
>  
>  public:
> +    explicit UpdateContextLossStatusTask(WebGLContext* context)

type* aValue

::: dom/canvas/WebGLContextLossHandler.h
@@ +29,5 @@
>  
>  public:
>      MOZ_DECLARE_REFCOUNTED_TYPENAME(WebGLContextLossHandler)
>  
> +    explicit WebGLContextLossHandler(WebGLContext* webgl);

aValue

::: dom/canvas/WebGLContextUtils.h
@@ +35,5 @@
>      GLComponents()
>          : mComponents(0)
>      { }
>  
> +    explicit GLComponents(GLenum format);

aValue

::: dom/canvas/WebGLElementArrayCache.cpp
@@ +143,5 @@
>  public:
>    // Constructor. Takes a reference to the WebGLElementArrayCache that is to be
>    // the parent. Does not initialize the tree. Should be followed by a call
>    // to Update() to attempt initializing the tree.
> +  explicit WebGLElementArrayCacheTree(WebGLElementArrayCache& p)

aValue

::: dom/canvas/WebGLExtensions.h
@@ +22,5 @@
>      : public nsWrapperCache
>      , public WebGLContextBoundObject
>  {
>  public:
> +    explicit WebGLExtensionBase(WebGLContext*);

aValue

@@ +52,5 @@
>  class WebGLExtensionCompressedTextureATC
>      : public WebGLExtensionBase
>  {
>  public:
> +    explicit WebGLExtensionCompressedTextureATC(WebGLContext*);

aValue

@@ +62,5 @@
>  class WebGLExtensionCompressedTextureETC1
>      : public WebGLExtensionBase
>  {
>  public:
> +    explicit WebGLExtensionCompressedTextureETC1(WebGLContext*);

aValue

@@ +72,5 @@
>  class WebGLExtensionCompressedTexturePVRTC
>      : public WebGLExtensionBase
>  {
>  public:
> +    explicit WebGLExtensionCompressedTexturePVRTC(WebGLContext*);

aValue

@@ +82,5 @@
>  class WebGLExtensionCompressedTextureS3TC
>      : public WebGLExtensionBase
>  {
>  public:
> +    explicit WebGLExtensionCompressedTextureS3TC(WebGLContext*);

aValue

@@ +92,5 @@
>  class WebGLExtensionDebugRendererInfo
>      : public WebGLExtensionBase
>  {
>  public:
> +    explicit WebGLExtensionDebugRendererInfo(WebGLContext*);

aValue

@@ +102,5 @@
>  class WebGLExtensionDebugShaders
>      : public WebGLExtensionBase
>  {
>  public:
> +    explicit WebGLExtensionDebugShaders(WebGLContext*);

aValue

@@ +114,5 @@
>  class WebGLExtensionDepthTexture
>      : public WebGLExtensionBase
>  {
>  public:
> +    explicit WebGLExtensionDepthTexture(WebGLContext*);

aValue

@@ +124,5 @@
>  class WebGLExtensionElementIndexUint
>      : public WebGLExtensionBase
>  {
>  public:
> +    explicit WebGLExtensionElementIndexUint(WebGLContext*);

aValue

@@ +134,5 @@
>  class WebGLExtensionFragDepth
>      : public WebGLExtensionBase
>  {
>  public:
> +    explicit WebGLExtensionFragDepth(WebGLContext*);

aValue

@@ +146,5 @@
>  class WebGLExtensionLoseContext
>      : public WebGLExtensionBase
>  {
>  public:
> +    explicit WebGLExtensionLoseContext(WebGLContext*);

aValue

@@ +159,5 @@
>  class WebGLExtensionSRGB
>      : public WebGLExtensionBase
>  {
>  public:
> +    explicit WebGLExtensionSRGB(WebGLContext*);

aValue

@@ +171,5 @@
>  class WebGLExtensionStandardDerivatives
>      : public WebGLExtensionBase
>  {
>  public:
> +    explicit WebGLExtensionStandardDerivatives(WebGLContext*);

aValue

@@ +181,5 @@
>  class WebGLExtensionShaderTextureLod
>      : public WebGLExtensionBase
>  {
>  public:
> +    explicit WebGLExtensionShaderTextureLod(WebGLContext*);

aValue

@@ +191,5 @@
>  class WebGLExtensionTextureFilterAnisotropic
>      : public WebGLExtensionBase
>  {
>  public:
> +    explicit WebGLExtensionTextureFilterAnisotropic(WebGLContext*);

aValue

@@ +201,5 @@
>  class WebGLExtensionTextureFloat
>      : public WebGLExtensionBase
>  {
>  public:
> +    explicit WebGLExtensionTextureFloat(WebGLContext*);

aValue

@@ +211,5 @@
>  class WebGLExtensionTextureFloatLinear
>      : public WebGLExtensionBase
>  {
>  public:
> +    explicit WebGLExtensionTextureFloatLinear(WebGLContext*);

aValue

@@ +221,5 @@
>  class WebGLExtensionTextureHalfFloat
>      : public WebGLExtensionBase
>  {
>  public:
> +    explicit WebGLExtensionTextureHalfFloat(WebGLContext*);

aValue

@@ +231,5 @@
>  class WebGLExtensionTextureHalfFloatLinear
>      : public WebGLExtensionBase
>  {
>  public:
> +    explicit WebGLExtensionTextureHalfFloatLinear(WebGLContext*);

aValue

@@ +241,5 @@
>  class WebGLExtensionColorBufferFloat
>      : public WebGLExtensionBase
>  {
>  public:
> +    explicit WebGLExtensionColorBufferFloat(WebGLContext*);

aValue

@@ +253,5 @@
>  class WebGLExtensionColorBufferHalfFloat
>      : public WebGLExtensionBase
>  {
>  public:
> +    explicit WebGLExtensionColorBufferHalfFloat(WebGLContext*);

aValue

@@ +265,5 @@
>  class WebGLExtensionDrawBuffers
>      : public WebGLExtensionBase
>  {
>  public:
> +    explicit WebGLExtensionDrawBuffers(WebGLContext*);

aValue

@@ +287,5 @@
>  class WebGLExtensionVertexArray
>      : public WebGLExtensionBase
>  {
>  public:
> +    explicit WebGLExtensionVertexArray(WebGLContext*);

aValue

@@ +304,5 @@
>  class WebGLExtensionInstancedArrays
>      : public WebGLExtensionBase
>  {
>  public:
> +    explicit WebGLExtensionInstancedArrays(WebGLContext* context);

aValue

@@ +323,5 @@
>  class WebGLExtensionBlendMinMax
>      : public WebGLExtensionBase
>  {
>  public:
> +    explicit WebGLExtensionBlendMinMax(WebGLContext*);

aValue

::: dom/canvas/WebGLProgram.h
@@ +30,5 @@
>      , public LinkedListElement<WebGLProgram>
>      , public WebGLContextBoundObject
>  {
>  public:
> +    explicit WebGLProgram(WebGLContext *context);

aValue

::: dom/canvas/WebGLQuery.h
@@ +26,5 @@
>  
>      // -------------------------------------------------------------------------
>      // CONSTRUCTOR
>  
> +    explicit WebGLQuery(WebGLContext *context);

aValue

::: dom/canvas/WebGLTexture.h
@@ +34,5 @@
>      , public WebGLContextBoundObject
>      , public WebGLFramebufferAttachable
>  {
>  public:
> +    explicit WebGLTexture(WebGLContext *context);

aValue

::: dom/canvas/WebGLUniformInfo.h
@@ +14,5 @@
>      uint32_t arraySize;
>      bool isArray;
>      ShDataType type;
>  
> +    explicit WebGLUniformInfo(uint32_t s = 0, bool a = false, ShDataType t = SH_NONE)

aValue

::: dom/canvas/WebGLValidateStrings.h
@@ +57,5 @@
>      // to be used in comments without potentially breaking OpenGL
>      // implementations not expecting characters outside the GLSL ES set.
>      class StripComments {
>      public:
> +        explicit StripComments(const nsAString& str)

aValue

::: dom/canvas/WebGLVertexArray.h
@@ +73,5 @@
>  
>  // -----------------------------------------------------------------------------
>  // PROTECTED
>  protected:
> +    explicit WebGLVertexArray(WebGLContext* context);

aValue

::: dom/canvas/WebGLVertexArrayFake.h
@@ +18,5 @@
>      virtual void DeleteImpl() MOZ_OVERRIDE { };
>      virtual void GenVertexArray() MOZ_OVERRIDE { };
>  
>  private:
> +    explicit WebGLVertexArrayFake(WebGLContext *context)

aValue

::: dom/canvas/WebGLVertexArrayGL.h
@@ +18,5 @@
>      virtual void BindVertexArrayImpl() MOZ_OVERRIDE;
>      virtual void GenVertexArray() MOZ_OVERRIDE;
>  
>  private:
> +    explicit WebGLVertexArrayGL(WebGLContext* context)

aValue

::: dom/crypto/WebCryptoTask.cpp
@@ +378,5 @@
>  
>  class FailureTask : public WebCryptoTask
>  {
>  public:
> +  explicit FailureTask(nsresult rv) {

aValue

::: dom/plugins/base/nsJSNPRuntime.cpp
@@ +100,5 @@
>  
>  class AutoJSExceptionReporter
>  {
>  public:
> +  explicit AutoJSExceptionReporter(JSContext *cx)

aValue

::: dom/plugins/base/nsNPAPIPlugin.h
@@ +379,5 @@
>  class MOZ_STACK_CLASS NPPAutoPusher : public NPPStack,
>                                        protected PluginDestructionGuard
>  {
>  public:
> +  explicit NPPAutoPusher(NPP npp)

aValue

::: dom/plugins/base/nsPluginsDirDarwin.cpp
@@ +116,5 @@
>  }
>  
>  class AutoCFTypeObject {
>  public:
> +  explicit AutoCFTypeObject(CFTypeRef object)

aValue

::: dom/plugins/ipc/PluginInstanceParent.cpp
@@ +348,5 @@
>  
>  class NotificationSink : public CompositionNotifySink
>  {
>  public:
> +  explicit NotificationSink(PluginInstanceParent *aInstance) : mInstance(aInstance)

type* aValue

::: dom/plugins/ipc/PluginInterposeOSX.mm
@@ +742,5 @@
>  
>  struct WindowInfo {
>    uint32_t window_id;
>    CGRect bounds;
> +  explicit WindowInfo(NSWindow* window) {

aValue

::: dom/plugins/ipc/PluginProcessChild.h
@@ +18,5 @@
>  protected:
>      typedef mozilla::ipc::ProcessChild ProcessChild;
>  
>  public:
> +    explicit PluginProcessChild(ProcessHandle parentHandle) : ProcessChild(parentHandle)

aValue

::: dom/src/notification/DesktopNotification.cpp
@@ +32,5 @@
>  public:
>    NS_DECL_ISUPPORTS_INHERITED
>    NS_DECL_NSICONTENTPERMISSIONREQUEST
>  
> +  explicit DesktopNotificationRequest(DesktopNotification* notification)

aValue
Attachment #8482027 - Flags: review?(amarchesini) → review+
Assignee

Comment 4

5 years ago
Sorry didn't address the comment on WebGLUniformInfo.h and WebGLExtensions.h.  I don't know any of this code and cannot think of good variable names.  Also, FWIW these patches are mostly automatically generated, I didn't mean to do a lot of manual work on them!  ;-)
https://hg.mozilla.org/mozilla-central/rev/ce5ae34c751b
Status: NEW → RESOLVED
Closed: 5 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla35
Flags: qe-verify-
Component: DOM → DOM: Core & HTML
You need to log in before you can comment on or make changes to this bug.