Merge lp:~thomir-deactivatedaccount/nux/lockrect-overloaded-method-hiding into lp:nux
Status: | Needs review |
---|---|
Proposed branch: | lp:~thomir-deactivatedaccount/nux/lockrect-overloaded-method-hiding |
Merge into: | lp:nux |
Diff against target: |
56 lines (+6/-5) 3 files modified
NuxGraphics/IOpenGLAnimatedTexture.cpp (+2/-2) NuxGraphics/IOpenGLBaseTexture.cpp (+2/-2) NuxGraphics/IOpenGLBaseTexture.h (+2/-1) |
To merge this branch: | bzr merge lp:~thomir-deactivatedaccount/nux/lockrect-overloaded-method-hiding |
Related bugs: |
Reviewer | Review Type | Date Requested | Status |
---|---|---|---|
PS Jenkins bot (community) | continuous-integration | Needs Fixing | |
Francis Ginther | Abstain | ||
Jay Taoko (community) | Needs Fixing | ||
Review via email: mp+109773@code.launchpad.net |
Commit message
Fixed a spot where a derived method was hiding a virtual method in the base class because the method signatures were different.
Description of the change
Problem:
IOpenGLVolumeTe
int IOpenGLVolumeTe
int Slice,
int Level,
SURFACE_
const SURFACE_RECT *pRect)
but it's base class defined it as:
virtual int LockRect(
int Level,
SURFACE_
const SURFACE_RECT *pRect);
i.e.- missing the Slice parameter. This means that the derived method was hiding the virtual method form the case class.
Solution:
I've added the Slice parameter to the base class. I also had to update one place in the code where this was being called. The 'Level' parameter was being passed in as 0, so I passed the 'Slice' parameter in as 0 as well. I have no idea if this is the right thing to do or not, so someone who knows what this code does should look into this.
Tests:
There are no tests. This code may break something.
Unmerged revisions
- 623. By Thomi Richards
-
Updated code that calls it. apparently we can just pass 0's around.
- 622. By Thomi Richards
-
Fix a place where virtual methods had different signatures in different classes.
Is this a warning that we get in Unity right now? I couldn't see it. How can I reproduce?
* I think we need to had a comment to say that "the value of slice must be zero" that for IOpenGLBaseText ure::LockRect. D::LockRect and IOpenGLRectangl eTexture: :LockRect have to be changed accordingly
* IOpenGLTexture2