All users were logged out of Bugzilla on October 13th, 2018

Make imgStatusTracker's changes non-imgContainer-specific

RESOLVED DUPLICATE of bug 584841

Status

()

RESOLVED DUPLICATE of bug 584841
8 years ago
8 years ago

People

(Reporter: dholbert, Assigned: dholbert)

Tracking

Trunk
Points:
---
Dependency tree / graph

Firefox Tracking Flags

(Not tracked)

Details

Attachments

(4 attachments)

(Assignee)

Description

8 years ago
Bug 572520 added some changes that moved towards being imgContainer-specific (the concrete class) & away from imgIContainer (the public interface), in particular in imgRequest and imgRequestProxy.

Filing this bug on using imgIContainer in those places (and extending it to support the necessary API calls).
(Assignee)

Comment 1

8 years ago
Created attachment 462904 [details] [diff] [review]
patch 1: move imgStatusTracker.h to /public/ dir

This first patch just moves the imgStatusTracker.h file to the /public/ directory and exports it, for use by non-ImageLib implementations of imgIContainer (e.g. in bug 276431)

(This change is relevant to this bug here because the next patch will move the method "imgStatusTracker* GetStatusTracker" from imgContainer to imgIContainer)
Assignee: nobody → dholbert
Status: NEW → ASSIGNED
Attachment #462904 - Flags: review?
(Assignee)

Updated

8 years ago
Attachment #462904 - Flags: review? → review?(joe)
(Assignee)

Comment 2

8 years ago
Created attachment 462920 [details] [diff] [review]
patch 2: move GetStatusTracker to imgIContainer

This patch moves GetStatusTracker from imgContainer to the (ImageLib-private bottom section of) imgIContainer.idl.

I tried to preserve the existing behavior of returning an imgStatusTracker& (using "[ref] native imgStatusTracker(imgStatusTracker);"), but that seemed to make the header ignore the [ref] aspect and just return an imgStatusTracker directly.

So, this patch changes GetStatusTracker to return a pointer instead of a reference. (Hence, this patch makes the requisite s/./->/ changes in callers of this method.)
Attachment #462920 - Flags: review?(joe)
(Assignee)

Comment 3

8 years ago
Created attachment 462922 [details] [diff] [review]
patch 3: move IsInitialized() to imgIContainer
(Assignee)

Updated

8 years ago
Attachment #462922 - Flags: review?(joe)
(Assignee)

Comment 4

8 years ago
Created attachment 462928 [details] [diff] [review]
patch 4: use imgIContainer instead of imgContainer

This patch restores us to having an "nsCOMPtr<imgIContainer> mImage;" in imgRequest and imgRequestProxy.  (instead of a nsRefPtr<imgContainer>)
Attachment #462928 - Flags: review?(joe)
(In reply to comment #2)
> I tried to preserve the existing behavior of returning an imgStatusTracker&
> (using "[ref] native imgStatusTracker(imgStatusTracker);"), but that seemed to
> make the header ignore the [ref] aspect and just return an imgStatusTracker
> directly.
> 
> So, this patch changes GetStatusTracker to return a pointer instead of a
> reference. (Hence, this patch makes the requisite s/./->/ changes in callers of
> this method.)

That feels sort of like a bug in xpidl; I really, really want to avoid this part of the patch if it's at all possible.

Can you take this up with someone who knows xpidl - bsmedberg, maybe?
(Assignee)

Comment 6

8 years ago
Bug 584841 should actually address most of what's covered here.
Depends on: 584841
(Assignee)

Updated

8 years ago
Attachment #462904 - Flags: review?(joe)
(Assignee)

Updated

8 years ago
Attachment #462920 - Flags: review?(joe)
(Assignee)

Updated

8 years ago
Attachment #462922 - Flags: review?(joe)
(Assignee)

Updated

8 years ago
Attachment #462928 - Flags: review?(joe)
(Assignee)

Updated

8 years ago
Status: ASSIGNED → RESOLVED
Last Resolved: 8 years ago
Resolution: --- → DUPLICATE
Duplicate of bug: 584841
You need to log in before you can comment on or make changes to this bug.