diff --git a/LEGO1/omni/src/stream/mxramstreamprovider.cpp b/LEGO1/omni/src/stream/mxramstreamprovider.cpp index 264d3b0a..ad6d80c4 100644 --- a/LEGO1/omni/src/stream/mxramstreamprovider.cpp +++ b/LEGO1/omni/src/stream/mxramstreamprovider.cpp @@ -140,7 +140,7 @@ MxU32 ReadData(MxU8* p_buffer, MxU32 p_size) } data2 = MxDSChunk::End(data2); - memcpy(data2, data3, MxDSChunk::Size(data3)); + memmove(data2, data3, MxDSChunk::Size(data3)); if (*MxStreamChunk::IntoObjectId(data2) == id && (*MxStreamChunk::IntoFlags(data2) & DS_CHUNK_END_OF_STREAM)) { diff --git a/miniwin/miniwin/src/miniwin.cpp b/miniwin/miniwin/src/miniwin.cpp index 9e26a590..e21b5a70 100644 --- a/miniwin/miniwin/src/miniwin.cpp +++ b/miniwin/miniwin/src/miniwin.cpp @@ -1,5 +1,7 @@ #include "miniwin.h" +#include "miniwin_p.h" + #include #include @@ -21,6 +23,7 @@ ULONG IUnknown::Release() HRESULT IUnknown::QueryInterface(const GUID& riid, void** ppvObject) { + SDL_LogError(LOG_CATEGORY_MINIWIN, "IUnknown does not implement guid"); return E_NOINTERFACE; } diff --git a/miniwin/miniwin/src/miniwin_d3drm.cpp b/miniwin/miniwin/src/miniwin_d3drm.cpp index e613326d..564f5e3c 100644 --- a/miniwin/miniwin/src/miniwin_d3drm.cpp +++ b/miniwin/miniwin/src/miniwin_d3drm.cpp @@ -183,7 +183,7 @@ struct Direct3DRMObjectBase : public T { private: std::vector> m_callbacks; - LPD3DRM_APPDATA m_appData = NULL; + LPD3DRM_APPDATA m_appData = nullptr; char* m_name = nullptr; }; @@ -206,7 +206,8 @@ struct Direct3DRMMeshImpl : public Direct3DRMObjectBase { HRESULT AddGroup(int vertexCount, int faceCount, int vertexPerFace, void* faceBuffer, D3DRMGROUPINDEX* groupIndex) override { - return DD_OK; + assert(false && "Unimplemented"); + return DDERR_GENERIC; } HRESULT GetGroup( int groupIndex, @@ -244,7 +245,7 @@ struct Direct3DRMMeshImpl : public Direct3DRMObjectBase { HRESULT GetVertices(int groupIndex, int startIndex, int count, D3DRMVERTEX* vertices) override { return DD_OK; } private: - IDirect3DRMTexture* m_groupTexture; + IDirect3DRMTexture* m_groupTexture = nullptr; }; struct Direct3DRMTextureImpl : public Direct3DRMObjectBase { @@ -375,7 +376,7 @@ private: IDirect3DRMFrameArray* m_children; IDirect3DRMLightArray* m_lights; IDirect3DRMVisualArray* m_visuals; - IDirect3DRMTexture* m_texture; + IDirect3DRMTexture* m_texture = nullptr; }; struct Direct3DRMViewportImpl : public Direct3DRMObjectBase { @@ -412,7 +413,7 @@ struct Direct3DRMViewportImpl : public Direct3DRMObjectBase HRESULT Pick(float x, float y, LPDIRECT3DRMPICKEDARRAY* pickedArray) override { return DD_OK; } private: - IDirect3DRMFrame* m_camera; + IDirect3DRMFrame* m_camera = nullptr; }; struct Direct3DRMLightImpl : public Direct3DRMObjectBase {