diff options
Diffstat (limited to 'core/os')
-rw-r--r-- | core/os/memory.h | 8 | ||||
-rw-r--r-- | core/os/os.cpp | 4 | ||||
-rw-r--r-- | core/os/os.h | 1 |
3 files changed, 9 insertions, 4 deletions
diff --git a/core/os/memory.h b/core/os/memory.h index 98b973bc06..8eb5ceccb6 100644 --- a/core/os/memory.h +++ b/core/os/memory.h @@ -308,11 +308,11 @@ T* memnew_arr_template(size_t p_elements,const char *p_descr="") { same strategy used by std::vector, and the DVector class, so it should be safe.*/ size_t len = sizeof(T) * p_elements; - unsigned int *mem = (unsigned int*)Memory::alloc_static( len + DEFAULT_ALIGNMENT, p_descr ); + unsigned int *mem = (unsigned int*)Memory::alloc_static( len + MAX(sizeof(size_t), DEFAULT_ALIGNMENT), p_descr ); T *failptr=0; //get rid of a warning ERR_FAIL_COND_V( !mem, failptr ); *mem=p_elements; - mem = (unsigned int *)( ((uint8_t*)mem) + DEFAULT_ALIGNMENT); + mem = (unsigned int *)( ((uint8_t*)mem) + MAX(sizeof(size_t), DEFAULT_ALIGNMENT)); T* elems = (T*)mem; /* call operator new */ @@ -331,14 +331,14 @@ T* memnew_arr_template(size_t p_elements,const char *p_descr="") { template<typename T> size_t memarr_len(const T *p_class) { - uint8_t* ptr = ((uint8_t*)p_class) - DEFAULT_ALIGNMENT; + uint8_t* ptr = ((uint8_t*)p_class) - MAX(sizeof(size_t), DEFAULT_ALIGNMENT); return *(size_t*)ptr; } template<typename T> void memdelete_arr(T *p_class) { - unsigned int * elems = (unsigned int*)(((uint8_t*)p_class) - DEFAULT_ALIGNMENT); + unsigned int * elems = (unsigned int*)(((uint8_t*)p_class) - MAX(sizeof(size_t), DEFAULT_ALIGNMENT)); for (unsigned int i=0;i<*elems;i++) { diff --git a/core/os/os.cpp b/core/os/os.cpp index 0bc06c8375..1aee6d9aa2 100644 --- a/core/os/os.cpp +++ b/core/os/os.cpp @@ -478,6 +478,10 @@ void OS::native_video_pause() { }; +void OS::native_video_unpause() { + +}; + void OS::native_video_stop() { }; diff --git a/core/os/os.h b/core/os/os.h index 0d4edb035d..a80b81bfa2 100644 --- a/core/os/os.h +++ b/core/os/os.h @@ -376,6 +376,7 @@ public: virtual Error native_video_play(String p_path, float p_volume, String p_audio_track, String p_subtitle_track); virtual bool native_video_is_playing() const; virtual void native_video_pause(); + virtual void native_video_unpause(); virtual void native_video_stop(); virtual bool can_use_threads() const; |