Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

parameters adding simplified #13

Open
wants to merge 1 commit into
base: onemw-wayland-egl-42
Choose a base branch
from

Conversation

BunioFH
Copy link
Collaborator

@BunioFH BunioFH commented Mar 27, 2018

No description provided.

dwrobel added a commit that referenced this pull request May 10, 2018
Fixes the following stack-buffer-overflow:
 ==27779==ERROR: AddressSanitizer: stack-buffer-overflow on address 0x7fff59785fa0 at pc 0x7f7b354ffeda bp 0x7fff59785760 sp 0x7fff59784ee8
 WRITE of size 17 at 0x7fff59785fa0 thread T0
    #0 0x7f7b354ffed9  (/lib64/libasan.so.4+0x62ed9)
    #1 0x7f7b3550092a in vsscanf (/lib64/libasan.so.4+0x6392a)
    #2 0x7f7b35500a26 in __interceptor_sscanf (/lib64/libasan.so.4+0x63a26)
    #3 0x59f20d in pxPath::parsePath(char const*, pxPath*) /home/sw/projects/pxscene/pxCore/examples/pxScene2d/src/rasterizer/pxPath.cpp:591
    #4 0x59acf0 in pxPath::setPath(rtString) /home/sw/projects/pxscene/pxCore/examples/pxScene2d/src/rasterizer/pxPath.cpp:201
    #5 0x5a3273 in pxPath::setPath_PropSetterThunk(rtValue const&) /home/sw/projects/pxscene/pxCore/examples/pxScene2d/src/rasterizer/pxPath.h:69
    #6 0x75c8a5 in rtObject::Set(char const*, rtValue const*) /home/sw/projects/pxscene/pxCore/src/rtObject.cpp:425
    #7 0x5ae279 in pxObject::Set(char const*, rtValue const*) /home/sw/projects/pxscene/pxCore/examples/pxScene2d/src/pxScene2d.cpp:683
    #8 0x75f4a1 in rtObjectRef::Set(char const*, rtValue const*) /home/sw/projects/pxscene/pxCore/src/rtObject.cpp:589
    #9 0x52ab93 in rtObjectBase::set(char const*, rtValue const&) /home/sw/projects/pxscene/pxCore/examples/pxScene2d/src/../../../src/rtObject.h:87
    #10 0x75ccc2 in rtObjectBase::set(rtObjectRef) /home/sw/projects/pxscene/pxCore/src/rtObject.cpp:456
    #11 0x5bd097 in pxScene2d::createPath(rtObjectRef, rtObjectRef&) /home/sw/projects/pxscene/pxCore/examples/pxScene2d/src/pxScene2d.cpp:2124
    #12 0x5bb0eb in pxScene2d::create(rtObjectRef, rtObjectRef&) /home/sw/projects/pxscene/pxCore/examples/pxScene2d/src/pxScene2d.cpp:2010
    #13 0x5f2c27 in pxScene2d::create_thunk(int, rtValue const*, rtValue&) (/home/sw/projects/pxscene/pxCore/examples/pxScene2d/src/pxscene+0x5f2c27)
    #14 0x75f79f in rtObjectFunction::Send(int, rtValue const*, rtValue*) /home/sw/projects/pxscene/pxCore/src/rtObject.cpp:605
    #15 0x6eadc7 in rtScriptNodeUtils::rtFunctionWrapper::call(v8::FunctionCallbackInfo<v8::Value> const&) /home/sw/projects/pxscene/pxCore/src/rtScriptNode/rtFunctionWrapper.cpp:245
    #16 0x7f7b34158321 in v8::internal::FunctionCallbackArguments::Call(void (*)(v8::FunctionCallbackInfo<v8::Value> const&)) (/lib64/libnode8-shared.so.57+0x6af321)
    #17 0x7f7b341c25a5  (/lib64/libnode8-shared.so.57+0x7195a5)
    #18 0x7f7b008042fc  (<unknown module>)

 Address 0x7fff59785fa0 is located in stack of thread T0 at offset 1616 in frame
    #0 0x59ad69 in pxPath::parsePath(char const*, pxPath*) /home/sw/projects/pxscene/pxCore/examples/pxScene2d/src/rasterizer/pxPath.cpp:219

  This frame has 25 object(s):
    [32, 36) 'x0'
    [96, 100) 'y0'
    [160, 164) 'x1'
    [224, 228) 'y1'
    [288, 292) 'x2'
    [352, 356) 'y2'
    [416, 420) 'rx'
    [480, 484) 'ry'
    [544, 548) 'w'
    [608, 612) 'h'
    [672, 676) 'xrot'
    [736, 740) 'r'
    [800, 804) 'n'
    [864, 868) 'lflag'
    [928, 932) 'sflag'
    [992, 996) 'pt'
    [1056, 1064) 'it'
    [1120, 1128) '<unknown>'
    [1184, 1192) 'end'
    [1248, 1256) '<unknown>'
    [1312, 1336) 'points'
    [1376, 1424) 'c'
    [1472, 1496) 'ans'
    [1536, 1538) 'op'
    [1600, 1616) 'poly_str' <== Memory access at offset 1616 overflows this variable
 HINT: this may be a false positive if your program uses some custom stack unwind mechanism or swapcontext
      (longjmp and C++ exceptions *are* supported)
 SUMMARY: AddressSanitizer: stack-buffer-overflow (/lib64/libasan.so.4+0x62ed9)
 Shadow bytes around the buggy address:
  0x10006b2e8ba0: f2 f2 f2 f2 f2 f2 04 f2 f2 f2 f2 f2 f2 f2 00 f2
  0x10006b2e8bb0: f2 f2 f2 f2 f2 f2 00 f2 f2 f2 f2 f2 f2 f2 00 f2
  0x10006b2e8bc0: f2 f2 f2 f2 f2 f2 00 f2 f2 f2 f2 f2 f2 f2 00 00
  0x10006b2e8bd0: 00 f2 f2 f2 f2 f2 00 00 00 00 00 00 f2 f2 f2 f2
  0x10006b2e8be0: f2 f2 00 00 00 f2 f2 f2 f2 f2 02 f2 f2 f2 f2 f2
=>0x10006b2e8bf0: f2 f2 00 00[f2]f2 00 00 00 00 00 00 00 00 00 00
  0x10006b2e8c00: 00 00 00 00 00 00 00 00 00 00 f1 f1 f1 f1 00 f2
  0x10006b2e8c10: f2 f2 00 00 00 00 00 00 00 00 00 00 00 00 00 00
  0x10006b2e8c20: 00 00 00 00 00 00 f1 f1 f1 f1 00 00 f2 f2 00 00
  0x10006b2e8c30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
  0x10006b2e8c40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Shadow byte legend (one shadow byte represents 8 application bytes):
  Addressable:           00
  Partially addressable: 01 02 03 04 05 06 07
  Heap left redzone:       fa
  Freed heap region:       fd
  Stack left redzone:      f1
  Stack mid redzone:       f2
  Stack right redzone:     f3
  Stack after return:      f5
  Stack use after scope:   f8
  Global redzone:          f9
  Global init order:       f6
  Poisoned by user:        f7
  Container overflow:      fc
  Array cookie:            ac
  Intra object redzone:    bb
  ASan internal:           fe
  Left alloca redzone:     ca
  Right alloca redzone:    cb
==27779==ABORTING
dwrobel added a commit that referenced this pull request May 10, 2018
Fixes the following stack-buffer-overflow:
 ==27779==ERROR: AddressSanitizer: stack-buffer-overflow on address 0x7fff59785fa0 at pc 0x7f7b354ffeda bp 0x7fff59785760 sp 0x7fff59784ee8
 WRITE of size 17 at 0x7fff59785fa0 thread T0
    #0 0x7f7b354ffed9  (/lib64/libasan.so.4+0x62ed9)
    #1 0x7f7b3550092a in vsscanf (/lib64/libasan.so.4+0x6392a)
    #2 0x7f7b35500a26 in __interceptor_sscanf (/lib64/libasan.so.4+0x63a26)
    #3 0x59f20d in pxPath::parsePath(char const*, pxPath*) /home/sw/projects/pxscene/pxCore/examples/pxScene2d/src/rasterizer/pxPath.cpp:591
    #4 0x59acf0 in pxPath::setPath(rtString) /home/sw/projects/pxscene/pxCore/examples/pxScene2d/src/rasterizer/pxPath.cpp:201
    #5 0x5a3273 in pxPath::setPath_PropSetterThunk(rtValue const&) /home/sw/projects/pxscene/pxCore/examples/pxScene2d/src/rasterizer/pxPath.h:69
    #6 0x75c8a5 in rtObject::Set(char const*, rtValue const*) /home/sw/projects/pxscene/pxCore/src/rtObject.cpp:425
    #7 0x5ae279 in pxObject::Set(char const*, rtValue const*) /home/sw/projects/pxscene/pxCore/examples/pxScene2d/src/pxScene2d.cpp:683
    #8 0x75f4a1 in rtObjectRef::Set(char const*, rtValue const*) /home/sw/projects/pxscene/pxCore/src/rtObject.cpp:589
    #9 0x52ab93 in rtObjectBase::set(char const*, rtValue const&) /home/sw/projects/pxscene/pxCore/examples/pxScene2d/src/../../../src/rtObject.h:87
    #10 0x75ccc2 in rtObjectBase::set(rtObjectRef) /home/sw/projects/pxscene/pxCore/src/rtObject.cpp:456
    #11 0x5bd097 in pxScene2d::createPath(rtObjectRef, rtObjectRef&) /home/sw/projects/pxscene/pxCore/examples/pxScene2d/src/pxScene2d.cpp:2124
    #12 0x5bb0eb in pxScene2d::create(rtObjectRef, rtObjectRef&) /home/sw/projects/pxscene/pxCore/examples/pxScene2d/src/pxScene2d.cpp:2010
    #13 0x5f2c27 in pxScene2d::create_thunk(int, rtValue const*, rtValue&) (/home/sw/projects/pxscene/pxCore/examples/pxScene2d/src/pxscene+0x5f2c27)
    #14 0x75f79f in rtObjectFunction::Send(int, rtValue const*, rtValue*) /home/sw/projects/pxscene/pxCore/src/rtObject.cpp:605
    #15 0x6eadc7 in rtScriptNodeUtils::rtFunctionWrapper::call(v8::FunctionCallbackInfo<v8::Value> const&) /home/sw/projects/pxscene/pxCore/src/rtScriptNode/rtFunctionWrapper.cpp:245
    #16 0x7f7b34158321 in v8::internal::FunctionCallbackArguments::Call(void (*)(v8::FunctionCallbackInfo<v8::Value> const&)) (/lib64/libnode8-shared.so.57+0x6af321)
    #17 0x7f7b341c25a5  (/lib64/libnode8-shared.so.57+0x7195a5)
    #18 0x7f7b008042fc  (<unknown module>)

 Address 0x7fff59785fa0 is located in stack of thread T0 at offset 1616 in frame
    #0 0x59ad69 in pxPath::parsePath(char const*, pxPath*) /home/sw/projects/pxscene/pxCore/examples/pxScene2d/src/rasterizer/pxPath.cpp:219

  This frame has 25 object(s):
    [32, 36) 'x0'
    [96, 100) 'y0'
    [160, 164) 'x1'
    [224, 228) 'y1'
    [288, 292) 'x2'
    [352, 356) 'y2'
    [416, 420) 'rx'
    [480, 484) 'ry'
    [544, 548) 'w'
    [608, 612) 'h'
    [672, 676) 'xrot'
    [736, 740) 'r'
    [800, 804) 'n'
    [864, 868) 'lflag'
    [928, 932) 'sflag'
    [992, 996) 'pt'
    [1056, 1064) 'it'
    [1120, 1128) '<unknown>'
    [1184, 1192) 'end'
    [1248, 1256) '<unknown>'
    [1312, 1336) 'points'
    [1376, 1424) 'c'
    [1472, 1496) 'ans'
    [1536, 1538) 'op'
    [1600, 1616) 'poly_str' <== Memory access at offset 1616 overflows this variable
 HINT: this may be a false positive if your program uses some custom stack unwind mechanism or swapcontext
      (longjmp and C++ exceptions *are* supported)
 SUMMARY: AddressSanitizer: stack-buffer-overflow (/lib64/libasan.so.4+0x62ed9)
 Shadow bytes around the buggy address:
  0x10006b2e8ba0: f2 f2 f2 f2 f2 f2 04 f2 f2 f2 f2 f2 f2 f2 00 f2
  0x10006b2e8bb0: f2 f2 f2 f2 f2 f2 00 f2 f2 f2 f2 f2 f2 f2 00 f2
  0x10006b2e8bc0: f2 f2 f2 f2 f2 f2 00 f2 f2 f2 f2 f2 f2 f2 00 00
  0x10006b2e8bd0: 00 f2 f2 f2 f2 f2 00 00 00 00 00 00 f2 f2 f2 f2
  0x10006b2e8be0: f2 f2 00 00 00 f2 f2 f2 f2 f2 02 f2 f2 f2 f2 f2
=>0x10006b2e8bf0: f2 f2 00 00[f2]f2 00 00 00 00 00 00 00 00 00 00
  0x10006b2e8c00: 00 00 00 00 00 00 00 00 00 00 f1 f1 f1 f1 00 f2
  0x10006b2e8c10: f2 f2 00 00 00 00 00 00 00 00 00 00 00 00 00 00
  0x10006b2e8c20: 00 00 00 00 00 00 f1 f1 f1 f1 00 00 f2 f2 00 00
  0x10006b2e8c30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
  0x10006b2e8c40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Shadow byte legend (one shadow byte represents 8 application bytes):
  Addressable:           00
  Partially addressable: 01 02 03 04 05 06 07
  Heap left redzone:       fa
  Freed heap region:       fd
  Stack left redzone:      f1
  Stack mid redzone:       f2
  Stack right redzone:     f3
  Stack after return:      f5
  Stack use after scope:   f8
  Global redzone:          f9
  Global init order:       f6
  Poisoned by user:        f7
  Container overflow:      fc
  Array cookie:            ac
  Intra object redzone:    bb
  ASan internal:           fe
  Left alloca redzone:     ca
  Right alloca redzone:    cb
==27779==ABORTING
dwrobel added a commit that referenced this pull request May 10, 2018
Fixes the following stack-buffer-overflow:
 ==27779==ERROR: AddressSanitizer: stack-buffer-overflow on address 0x7fff59785fa0 at pc 0x7f7b354ffeda bp 0x7fff59785760 sp 0x7fff59784ee8
 WRITE of size 17 at 0x7fff59785fa0 thread T0
    #0 0x7f7b354ffed9  (/lib64/libasan.so.4+0x62ed9)
    #1 0x7f7b3550092a in vsscanf (/lib64/libasan.so.4+0x6392a)
    #2 0x7f7b35500a26 in __interceptor_sscanf (/lib64/libasan.so.4+0x63a26)
    #3 0x59f20d in pxPath::parsePath(char const*, pxPath*) /home/sw/projects/pxscene/pxCore/examples/pxScene2d/src/rasterizer/pxPath.cpp:591
    #4 0x59acf0 in pxPath::setPath(rtString) /home/sw/projects/pxscene/pxCore/examples/pxScene2d/src/rasterizer/pxPath.cpp:201
    #5 0x5a3273 in pxPath::setPath_PropSetterThunk(rtValue const&) /home/sw/projects/pxscene/pxCore/examples/pxScene2d/src/rasterizer/pxPath.h:69
    #6 0x75c8a5 in rtObject::Set(char const*, rtValue const*) /home/sw/projects/pxscene/pxCore/src/rtObject.cpp:425
    #7 0x5ae279 in pxObject::Set(char const*, rtValue const*) /home/sw/projects/pxscene/pxCore/examples/pxScene2d/src/pxScene2d.cpp:683
    #8 0x75f4a1 in rtObjectRef::Set(char const*, rtValue const*) /home/sw/projects/pxscene/pxCore/src/rtObject.cpp:589
    #9 0x52ab93 in rtObjectBase::set(char const*, rtValue const&) /home/sw/projects/pxscene/pxCore/examples/pxScene2d/src/../../../src/rtObject.h:87
    #10 0x75ccc2 in rtObjectBase::set(rtObjectRef) /home/sw/projects/pxscene/pxCore/src/rtObject.cpp:456
    #11 0x5bd097 in pxScene2d::createPath(rtObjectRef, rtObjectRef&) /home/sw/projects/pxscene/pxCore/examples/pxScene2d/src/pxScene2d.cpp:2124
    #12 0x5bb0eb in pxScene2d::create(rtObjectRef, rtObjectRef&) /home/sw/projects/pxscene/pxCore/examples/pxScene2d/src/pxScene2d.cpp:2010
    #13 0x5f2c27 in pxScene2d::create_thunk(int, rtValue const*, rtValue&) (/home/sw/projects/pxscene/pxCore/examples/pxScene2d/src/pxscene+0x5f2c27)
    #14 0x75f79f in rtObjectFunction::Send(int, rtValue const*, rtValue*) /home/sw/projects/pxscene/pxCore/src/rtObject.cpp:605
    #15 0x6eadc7 in rtScriptNodeUtils::rtFunctionWrapper::call(v8::FunctionCallbackInfo<v8::Value> const&) /home/sw/projects/pxscene/pxCore/src/rtScriptNode/rtFunctionWrapper.cpp:245
    #16 0x7f7b34158321 in v8::internal::FunctionCallbackArguments::Call(void (*)(v8::FunctionCallbackInfo<v8::Value> const&)) (/lib64/libnode8-shared.so.57+0x6af321)
    #17 0x7f7b341c25a5  (/lib64/libnode8-shared.so.57+0x7195a5)
    #18 0x7f7b008042fc  (<unknown module>)

 Address 0x7fff59785fa0 is located in stack of thread T0 at offset 1616 in frame
    #0 0x59ad69 in pxPath::parsePath(char const*, pxPath*) /home/sw/projects/pxscene/pxCore/examples/pxScene2d/src/rasterizer/pxPath.cpp:219

  This frame has 25 object(s):
    [32, 36) 'x0'
    [96, 100) 'y0'
    [160, 164) 'x1'
    [224, 228) 'y1'
    [288, 292) 'x2'
    [352, 356) 'y2'
    [416, 420) 'rx'
    [480, 484) 'ry'
    [544, 548) 'w'
    [608, 612) 'h'
    [672, 676) 'xrot'
    [736, 740) 'r'
    [800, 804) 'n'
    [864, 868) 'lflag'
    [928, 932) 'sflag'
    [992, 996) 'pt'
    [1056, 1064) 'it'
    [1120, 1128) '<unknown>'
    [1184, 1192) 'end'
    [1248, 1256) '<unknown>'
    [1312, 1336) 'points'
    [1376, 1424) 'c'
    [1472, 1496) 'ans'
    [1536, 1538) 'op'
    [1600, 1616) 'poly_str' <== Memory access at offset 1616 overflows this variable
 HINT: this may be a false positive if your program uses some custom stack unwind mechanism or swapcontext
      (longjmp and C++ exceptions *are* supported)
 SUMMARY: AddressSanitizer: stack-buffer-overflow (/lib64/libasan.so.4+0x62ed9)
 Shadow bytes around the buggy address:
  0x10006b2e8ba0: f2 f2 f2 f2 f2 f2 04 f2 f2 f2 f2 f2 f2 f2 00 f2
  0x10006b2e8bb0: f2 f2 f2 f2 f2 f2 00 f2 f2 f2 f2 f2 f2 f2 00 f2
  0x10006b2e8bc0: f2 f2 f2 f2 f2 f2 00 f2 f2 f2 f2 f2 f2 f2 00 00
  0x10006b2e8bd0: 00 f2 f2 f2 f2 f2 00 00 00 00 00 00 f2 f2 f2 f2
  0x10006b2e8be0: f2 f2 00 00 00 f2 f2 f2 f2 f2 02 f2 f2 f2 f2 f2
=>0x10006b2e8bf0: f2 f2 00 00[f2]f2 00 00 00 00 00 00 00 00 00 00
  0x10006b2e8c00: 00 00 00 00 00 00 00 00 00 00 f1 f1 f1 f1 00 f2
  0x10006b2e8c10: f2 f2 00 00 00 00 00 00 00 00 00 00 00 00 00 00
  0x10006b2e8c20: 00 00 00 00 00 00 f1 f1 f1 f1 00 00 f2 f2 00 00
  0x10006b2e8c30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
  0x10006b2e8c40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Shadow byte legend (one shadow byte represents 8 application bytes):
  Addressable:           00
  Partially addressable: 01 02 03 04 05 06 07
  Heap left redzone:       fa
  Freed heap region:       fd
  Stack left redzone:      f1
  Stack mid redzone:       f2
  Stack right redzone:     f3
  Stack after return:      f5
  Stack use after scope:   f8
  Global redzone:          f9
  Global init order:       f6
  Poisoned by user:        f7
  Container overflow:      fc
  Array cookie:            ac
  Intra object redzone:    bb
  ASan internal:           fe
  Left alloca redzone:     ca
  Right alloca redzone:    cb
==27779==ABORTING
dwrobel added a commit that referenced this pull request May 11, 2018
…pxscene#1150)

Fixes the following stack-buffer-overflow:
 ==27779==ERROR: AddressSanitizer: stack-buffer-overflow on address 0x7fff59785fa0 at pc 0x7f7b354ffeda bp 0x7fff59785760 sp 0x7fff59784ee8
 WRITE of size 17 at 0x7fff59785fa0 thread T0
    #0 0x7f7b354ffed9  (/lib64/libasan.so.4+0x62ed9)
    #1 0x7f7b3550092a in vsscanf (/lib64/libasan.so.4+0x6392a)
    #2 0x7f7b35500a26 in __interceptor_sscanf (/lib64/libasan.so.4+0x63a26)
    #3 0x59f20d in pxPath::parsePath(char const*, pxPath*) /home/sw/projects/pxscene/pxCore/examples/pxScene2d/src/rasterizer/pxPath.cpp:591
    #4 0x59acf0 in pxPath::setPath(rtString) /home/sw/projects/pxscene/pxCore/examples/pxScene2d/src/rasterizer/pxPath.cpp:201
    #5 0x5a3273 in pxPath::setPath_PropSetterThunk(rtValue const&) /home/sw/projects/pxscene/pxCore/examples/pxScene2d/src/rasterizer/pxPath.h:69
    #6 0x75c8a5 in rtObject::Set(char const*, rtValue const*) /home/sw/projects/pxscene/pxCore/src/rtObject.cpp:425
    #7 0x5ae279 in pxObject::Set(char const*, rtValue const*) /home/sw/projects/pxscene/pxCore/examples/pxScene2d/src/pxScene2d.cpp:683
    #8 0x75f4a1 in rtObjectRef::Set(char const*, rtValue const*) /home/sw/projects/pxscene/pxCore/src/rtObject.cpp:589
    #9 0x52ab93 in rtObjectBase::set(char const*, rtValue const&) /home/sw/projects/pxscene/pxCore/examples/pxScene2d/src/../../../src/rtObject.h:87
    #10 0x75ccc2 in rtObjectBase::set(rtObjectRef) /home/sw/projects/pxscene/pxCore/src/rtObject.cpp:456
    #11 0x5bd097 in pxScene2d::createPath(rtObjectRef, rtObjectRef&) /home/sw/projects/pxscene/pxCore/examples/pxScene2d/src/pxScene2d.cpp:2124
    #12 0x5bb0eb in pxScene2d::create(rtObjectRef, rtObjectRef&) /home/sw/projects/pxscene/pxCore/examples/pxScene2d/src/pxScene2d.cpp:2010
    #13 0x5f2c27 in pxScene2d::create_thunk(int, rtValue const*, rtValue&) (/home/sw/projects/pxscene/pxCore/examples/pxScene2d/src/pxscene+0x5f2c27)
    #14 0x75f79f in rtObjectFunction::Send(int, rtValue const*, rtValue*) /home/sw/projects/pxscene/pxCore/src/rtObject.cpp:605
    #15 0x6eadc7 in rtScriptNodeUtils::rtFunctionWrapper::call(v8::FunctionCallbackInfo<v8::Value> const&) /home/sw/projects/pxscene/pxCore/src/rtScriptNode/rtFunctionWrapper.cpp:245
    #16 0x7f7b34158321 in v8::internal::FunctionCallbackArguments::Call(void (*)(v8::FunctionCallbackInfo<v8::Value> const&)) (/lib64/libnode8-shared.so.57+0x6af321)
    #17 0x7f7b341c25a5  (/lib64/libnode8-shared.so.57+0x7195a5)
    #18 0x7f7b008042fc  (<unknown module>)

 Address 0x7fff59785fa0 is located in stack of thread T0 at offset 1616 in frame
    #0 0x59ad69 in pxPath::parsePath(char const*, pxPath*) /home/sw/projects/pxscene/pxCore/examples/pxScene2d/src/rasterizer/pxPath.cpp:219

  This frame has 25 object(s):
    [32, 36) 'x0'
    [96, 100) 'y0'
    [160, 164) 'x1'
    [224, 228) 'y1'
    [288, 292) 'x2'
    [352, 356) 'y2'
    [416, 420) 'rx'
    [480, 484) 'ry'
    [544, 548) 'w'
    [608, 612) 'h'
    [672, 676) 'xrot'
    [736, 740) 'r'
    [800, 804) 'n'
    [864, 868) 'lflag'
    [928, 932) 'sflag'
    [992, 996) 'pt'
    [1056, 1064) 'it'
    [1120, 1128) '<unknown>'
    [1184, 1192) 'end'
    [1248, 1256) '<unknown>'
    [1312, 1336) 'points'
    [1376, 1424) 'c'
    [1472, 1496) 'ans'
    [1536, 1538) 'op'
    [1600, 1616) 'poly_str' <== Memory access at offset 1616 overflows this variable
 HINT: this may be a false positive if your program uses some custom stack unwind mechanism or swapcontext
      (longjmp and C++ exceptions *are* supported)
 SUMMARY: AddressSanitizer: stack-buffer-overflow (/lib64/libasan.so.4+0x62ed9)
 Shadow bytes around the buggy address:
  0x10006b2e8ba0: f2 f2 f2 f2 f2 f2 04 f2 f2 f2 f2 f2 f2 f2 00 f2
  0x10006b2e8bb0: f2 f2 f2 f2 f2 f2 00 f2 f2 f2 f2 f2 f2 f2 00 f2
  0x10006b2e8bc0: f2 f2 f2 f2 f2 f2 00 f2 f2 f2 f2 f2 f2 f2 00 00
  0x10006b2e8bd0: 00 f2 f2 f2 f2 f2 00 00 00 00 00 00 f2 f2 f2 f2
  0x10006b2e8be0: f2 f2 00 00 00 f2 f2 f2 f2 f2 02 f2 f2 f2 f2 f2
=>0x10006b2e8bf0: f2 f2 00 00[f2]f2 00 00 00 00 00 00 00 00 00 00
  0x10006b2e8c00: 00 00 00 00 00 00 00 00 00 00 f1 f1 f1 f1 00 f2
  0x10006b2e8c10: f2 f2 00 00 00 00 00 00 00 00 00 00 00 00 00 00
  0x10006b2e8c20: 00 00 00 00 00 00 f1 f1 f1 f1 00 00 f2 f2 00 00
  0x10006b2e8c30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
  0x10006b2e8c40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Shadow byte legend (one shadow byte represents 8 application bytes):
  Addressable:           00
  Partially addressable: 01 02 03 04 05 06 07
  Heap left redzone:       fa
  Freed heap region:       fd
  Stack left redzone:      f1
  Stack mid redzone:       f2
  Stack right redzone:     f3
  Stack after return:      f5
  Stack use after scope:   f8
  Global redzone:          f9
  Global init order:       f6
  Poisoned by user:        f7
  Container overflow:      fc
  Array cookie:            ac
  Intra object redzone:    bb
  ASan internal:           fe
  Left alloca redzone:     ca
  Right alloca redzone:    cb
==27779==ABORTING
dwrobel added a commit that referenced this pull request Jun 19, 2018
Fixes the following issue:

=================================================================
==12472==ERROR: AddressSanitizer: alloc-dealloc-mismatch (malloc vs operator delete) on 0x602000057c90
    #0 0x7fef91d40748 in operator delete(void*) (/lib64/libasan.so.5+0xf1748)
    #1 0xa67017 in pxLoadSVGImage(char const*, unsigned long, pxOffscreen&, int, int)
pxLoadSVGImage(char const*, unsigned long, pxOffscreen&, int, int) /home/sw/projects/pxscene/pxCore/src/pxUtil.cpp:1005
    #2 0xa6879b in pxLoadImage(char const*, unsigned long, pxOffscreen&, int, int) /home/sw/projects/pxscene/pxCore/src/pxUtil.cpp:106
    #3 0x6bc75b in pxUtilTest::pxLoadImage3ArgsLessLengthFailureTest() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/test_pxUtil.cpp:160
    #4 0x6bc75b in pxUtilTest_pxutilsTest_Test::TestBody() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/test_pxUtil.cpp:372
    #5 0x87b623 in void testing::internal::HandleSehExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:2402
    #6 0x87b623 in void testing::internal::HandleExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:2438
    #7 0x84c7d5 in testing::Test::Run() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:2474
    #8 0x84cb37 in testing::TestInfo::Run() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:2656
    #9 0x84cef4 in testing::TestCase::Run() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:2774
    #10 0x84e361 in testing::internal::UnitTestImpl::RunAllTests() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:4649
    #11 0x84eddd in bool testing::internal::HandleSehExceptionsInMethodIfSupported<testing::internal::UnitTestImpl, bool>(testing::internal::UnitTestImpl*, bool (testing::internal::UnitTestImpl::*)(), char const*) /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:2402
    #12 0x84eddd in bool testing::internal::HandleExceptionsInMethodIfSupported<testing::internal::UnitTestImpl, bool>(testing::internal::UnitTestImpl*, bool (testing::internal::UnitTestImpl::*)(), char const*) /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:2438
    #13 0x84eddd in testing::UnitTest::Run() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:4257
    #14 0x4d3591 in RUN_ALL_TESTS() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/include/gtest/gtest.h:2233
    #15 0x4d3591 in main /home/sw/projects/pxscene/pxCore/tests/pxScene2d/pxscene2dtestsmain.cpp:119
    #16 0x7fef8cb0518a in __libc_start_main ../csu/libc-start.c:308
    #17 0x5011a9 in _start (/home/sw/projects/pxscene/pxCore/tests/pxScene2d/pxscene2dtests+0x5011a9)

0x602000057c90 is located 0 bytes inside of 16-byte region [0x602000057c90,0x602000057ca0)
allocated by thread T0 here:
    #0 0x7fef91d3de50 in calloc (/lib64/libasan.so.5+0xeee50)
    #1 0xa5c705 in nsvg__createParser /home/sw/projects/pxscene/pxCore/src/../examples/pxScene2d/external/nanosvg/src/nanosvg.h:619
    #2 0xa5c705 in nsvgParse /home/sw/projects/pxscene/pxCore/src/../examples/pxScene2d/external/nanosvg/src/nanosvg.h:2861
    #3 0xa66e0f in pxLoadSVGImage(char const*, unsigned long, pxOffscreen&, int, int) /home/sw/projects/pxscene/pxCore/src/pxUtil.cpp:988
    #4 0xa6879b in pxLoadImage(char const*, unsigned long, pxOffscreen&, int, int) /home/sw/projects/pxscene/pxCore/src/pxUtil.cpp:106
    #5 0x6bc75b in pxUtilTest::pxLoadImage3ArgsLessLengthFailureTest() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/test_pxUtil.cpp:160
    #6 0x6bc75b in pxUtilTest_pxutilsTest_Test::TestBody() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/test_pxUtil.cpp:372
    #7 0x87b623 in void testing::internal::HandleSehExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:2402
    #8 0x87b623 in void testing::internal::HandleExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:2438
    #9 0x84c7d5 in testing::Test::Run() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:2474
    #10 0x84cb37 in testing::TestInfo::Run() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:2656
    #11 0x84cef4 in testing::TestCase::Run() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:2774
    #12 0x84e361 in testing::internal::UnitTestImpl::RunAllTests() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:4649
    #13 0x84eddd in bool testing::internal::HandleSehExceptionsInMethodIfSupported<testing::internal::UnitTestImpl, bool>(testing::internal::UnitTestImpl*, bool (testing::internal::UnitTestImpl::*)(), char const*) /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:2402
    #14 0x84eddd in bool testing::internal::HandleExceptionsInMethodIfSupported<testing::internal::UnitTestImpl, bool>(testing::internal::UnitTestImpl*, bool (testing::internal::UnitTestImpl::*)(), char const*) /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:2438
    #15 0x84eddd in testing::UnitTest::Run() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:4257
    #16 0x4d3591 in RUN_ALL_TESTS() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/include/gtest/gtest.h:2233
    #17 0x4d3591 in main /home/sw/projects/pxscene/pxCore/tests/pxScene2d/pxscene2dtestsmain.cpp:119
    #18 0x7fef8cb0518a in __libc_start_main ../csu/libc-start.c:308

SUMMARY: AddressSanitizer: alloc-dealloc-mismatch (/lib64/libasan.so.5+0xf1748) in operator delete(void*)
dwrobel added a commit that referenced this pull request Jun 19, 2018
Fixes the following issue:

=================================================================
==12472==ERROR: AddressSanitizer: alloc-dealloc-mismatch (malloc vs operator delete) on 0x602000057c90
    #0 0x7fef91d40748 in operator delete(void*) (/lib64/libasan.so.5+0xf1748)
    #1 0xa67017 in pxLoadSVGImage(char const*, unsigned long, pxOffscreen&, int, int)
pxLoadSVGImage(char const*, unsigned long, pxOffscreen&, int, int) /home/sw/projects/pxscene/pxCore/src/pxUtil.cpp:1005
    #2 0xa6879b in pxLoadImage(char const*, unsigned long, pxOffscreen&, int, int) /home/sw/projects/pxscene/pxCore/src/pxUtil.cpp:106
    #3 0x6bc75b in pxUtilTest::pxLoadImage3ArgsLessLengthFailureTest() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/test_pxUtil.cpp:160
    #4 0x6bc75b in pxUtilTest_pxutilsTest_Test::TestBody() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/test_pxUtil.cpp:372
    #5 0x87b623 in void testing::internal::HandleSehExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:2402
    #6 0x87b623 in void testing::internal::HandleExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:2438
    #7 0x84c7d5 in testing::Test::Run() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:2474
    #8 0x84cb37 in testing::TestInfo::Run() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:2656
    #9 0x84cef4 in testing::TestCase::Run() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:2774
    #10 0x84e361 in testing::internal::UnitTestImpl::RunAllTests() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:4649
    #11 0x84eddd in bool testing::internal::HandleSehExceptionsInMethodIfSupported<testing::internal::UnitTestImpl, bool>(testing::internal::UnitTestImpl*, bool (testing::internal::UnitTestImpl::*)(), char const*) /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:2402
    #12 0x84eddd in bool testing::internal::HandleExceptionsInMethodIfSupported<testing::internal::UnitTestImpl, bool>(testing::internal::UnitTestImpl*, bool (testing::internal::UnitTestImpl::*)(), char const*) /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:2438
    #13 0x84eddd in testing::UnitTest::Run() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:4257
    #14 0x4d3591 in RUN_ALL_TESTS() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/include/gtest/gtest.h:2233
    #15 0x4d3591 in main /home/sw/projects/pxscene/pxCore/tests/pxScene2d/pxscene2dtestsmain.cpp:119
    #16 0x7fef8cb0518a in __libc_start_main ../csu/libc-start.c:308
    #17 0x5011a9 in _start (/home/sw/projects/pxscene/pxCore/tests/pxScene2d/pxscene2dtests+0x5011a9)

0x602000057c90 is located 0 bytes inside of 16-byte region [0x602000057c90,0x602000057ca0)
allocated by thread T0 here:
    #0 0x7fef91d3de50 in calloc (/lib64/libasan.so.5+0xeee50)
    #1 0xa5c705 in nsvg__createParser /home/sw/projects/pxscene/pxCore/src/../examples/pxScene2d/external/nanosvg/src/nanosvg.h:619
    #2 0xa5c705 in nsvgParse /home/sw/projects/pxscene/pxCore/src/../examples/pxScene2d/external/nanosvg/src/nanosvg.h:2861
    #3 0xa66e0f in pxLoadSVGImage(char const*, unsigned long, pxOffscreen&, int, int) /home/sw/projects/pxscene/pxCore/src/pxUtil.cpp:988
    #4 0xa6879b in pxLoadImage(char const*, unsigned long, pxOffscreen&, int, int) /home/sw/projects/pxscene/pxCore/src/pxUtil.cpp:106
    #5 0x6bc75b in pxUtilTest::pxLoadImage3ArgsLessLengthFailureTest() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/test_pxUtil.cpp:160
    #6 0x6bc75b in pxUtilTest_pxutilsTest_Test::TestBody() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/test_pxUtil.cpp:372
    #7 0x87b623 in void testing::internal::HandleSehExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:2402
    #8 0x87b623 in void testing::internal::HandleExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:2438
    #9 0x84c7d5 in testing::Test::Run() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:2474
    #10 0x84cb37 in testing::TestInfo::Run() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:2656
    #11 0x84cef4 in testing::TestCase::Run() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:2774
    #12 0x84e361 in testing::internal::UnitTestImpl::RunAllTests() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:4649
    #13 0x84eddd in bool testing::internal::HandleSehExceptionsInMethodIfSupported<testing::internal::UnitTestImpl, bool>(testing::internal::UnitTestImpl*, bool (testing::internal::UnitTestImpl::*)(), char const*) /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:2402
    #14 0x84eddd in bool testing::internal::HandleExceptionsInMethodIfSupported<testing::internal::UnitTestImpl, bool>(testing::internal::UnitTestImpl*, bool (testing::internal::UnitTestImpl::*)(), char const*) /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:2438
    #15 0x84eddd in testing::UnitTest::Run() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:4257
    #16 0x4d3591 in RUN_ALL_TESTS() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/include/gtest/gtest.h:2233
    #17 0x4d3591 in main /home/sw/projects/pxscene/pxCore/tests/pxScene2d/pxscene2dtestsmain.cpp:119
    #18 0x7fef8cb0518a in __libc_start_main ../csu/libc-start.c:308

SUMMARY: AddressSanitizer: alloc-dealloc-mismatch (/lib64/libasan.so.5+0xf1748) in operator delete(void*)
dwrobel added a commit that referenced this pull request Jun 19, 2018
Fixes the following issue:

=================================================================
==12472==ERROR: AddressSanitizer: alloc-dealloc-mismatch (malloc vs operator delete) on 0x602000057c90
    #0 0x7fef91d40748 in operator delete(void*) (/lib64/libasan.so.5+0xf1748)
    #1 0xa67017 in pxLoadSVGImage(char const*, unsigned long, pxOffscreen&, int, int)
pxLoadSVGImage(char const*, unsigned long, pxOffscreen&, int, int) /home/sw/projects/pxscene/pxCore/src/pxUtil.cpp:1005
    #2 0xa6879b in pxLoadImage(char const*, unsigned long, pxOffscreen&, int, int) /home/sw/projects/pxscene/pxCore/src/pxUtil.cpp:106
    #3 0x6bc75b in pxUtilTest::pxLoadImage3ArgsLessLengthFailureTest() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/test_pxUtil.cpp:160
    #4 0x6bc75b in pxUtilTest_pxutilsTest_Test::TestBody() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/test_pxUtil.cpp:372
    #5 0x87b623 in void testing::internal::HandleSehExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:2402
    #6 0x87b623 in void testing::internal::HandleExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:2438
    #7 0x84c7d5 in testing::Test::Run() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:2474
    #8 0x84cb37 in testing::TestInfo::Run() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:2656
    #9 0x84cef4 in testing::TestCase::Run() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:2774
    #10 0x84e361 in testing::internal::UnitTestImpl::RunAllTests() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:4649
    #11 0x84eddd in bool testing::internal::HandleSehExceptionsInMethodIfSupported<testing::internal::UnitTestImpl, bool>(testing::internal::UnitTestImpl*, bool (testing::internal::UnitTestImpl::*)(), char const*) /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:2402
    #12 0x84eddd in bool testing::internal::HandleExceptionsInMethodIfSupported<testing::internal::UnitTestImpl, bool>(testing::internal::UnitTestImpl*, bool (testing::internal::UnitTestImpl::*)(), char const*) /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:2438
    #13 0x84eddd in testing::UnitTest::Run() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:4257
    #14 0x4d3591 in RUN_ALL_TESTS() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/include/gtest/gtest.h:2233
    #15 0x4d3591 in main /home/sw/projects/pxscene/pxCore/tests/pxScene2d/pxscene2dtestsmain.cpp:119
    #16 0x7fef8cb0518a in __libc_start_main ../csu/libc-start.c:308
    #17 0x5011a9 in _start (/home/sw/projects/pxscene/pxCore/tests/pxScene2d/pxscene2dtests+0x5011a9)

0x602000057c90 is located 0 bytes inside of 16-byte region [0x602000057c90,0x602000057ca0)
allocated by thread T0 here:
    #0 0x7fef91d3de50 in calloc (/lib64/libasan.so.5+0xeee50)
    #1 0xa5c705 in nsvg__createParser /home/sw/projects/pxscene/pxCore/src/../examples/pxScene2d/external/nanosvg/src/nanosvg.h:619
    #2 0xa5c705 in nsvgParse /home/sw/projects/pxscene/pxCore/src/../examples/pxScene2d/external/nanosvg/src/nanosvg.h:2861
    #3 0xa66e0f in pxLoadSVGImage(char const*, unsigned long, pxOffscreen&, int, int) /home/sw/projects/pxscene/pxCore/src/pxUtil.cpp:988
    #4 0xa6879b in pxLoadImage(char const*, unsigned long, pxOffscreen&, int, int) /home/sw/projects/pxscene/pxCore/src/pxUtil.cpp:106
    #5 0x6bc75b in pxUtilTest::pxLoadImage3ArgsLessLengthFailureTest() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/test_pxUtil.cpp:160
    #6 0x6bc75b in pxUtilTest_pxutilsTest_Test::TestBody() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/test_pxUtil.cpp:372
    #7 0x87b623 in void testing::internal::HandleSehExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:2402
    #8 0x87b623 in void testing::internal::HandleExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:2438
    #9 0x84c7d5 in testing::Test::Run() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:2474
    #10 0x84cb37 in testing::TestInfo::Run() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:2656
    #11 0x84cef4 in testing::TestCase::Run() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:2774
    #12 0x84e361 in testing::internal::UnitTestImpl::RunAllTests() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:4649
    #13 0x84eddd in bool testing::internal::HandleSehExceptionsInMethodIfSupported<testing::internal::UnitTestImpl, bool>(testing::internal::UnitTestImpl*, bool (testing::internal::UnitTestImpl::*)(), char const*) /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:2402
    #14 0x84eddd in bool testing::internal::HandleExceptionsInMethodIfSupported<testing::internal::UnitTestImpl, bool>(testing::internal::UnitTestImpl*, bool (testing::internal::UnitTestImpl::*)(), char const*) /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:2438
    #15 0x84eddd in testing::UnitTest::Run() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:4257
    #16 0x4d3591 in RUN_ALL_TESTS() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/include/gtest/gtest.h:2233
    #17 0x4d3591 in main /home/sw/projects/pxscene/pxCore/tests/pxScene2d/pxscene2dtestsmain.cpp:119
    #18 0x7fef8cb0518a in __libc_start_main ../csu/libc-start.c:308

SUMMARY: AddressSanitizer: alloc-dealloc-mismatch (/lib64/libasan.so.5+0xf1748) in operator delete(void*)
dwrobel added a commit that referenced this pull request Jun 19, 2018
Fixes the following issue:

=================================================================
==12472==ERROR: AddressSanitizer: alloc-dealloc-mismatch (malloc vs operator delete) on 0x602000057c90
    #0 0x7fef91d40748 in operator delete(void*) (/lib64/libasan.so.5+0xf1748)
    #1 0xa67017 in pxLoadSVGImage(char const*, unsigned long, pxOffscreen&, int, int)
pxLoadSVGImage(char const*, unsigned long, pxOffscreen&, int, int) /home/sw/projects/pxscene/pxCore/src/pxUtil.cpp:1005
    #2 0xa6879b in pxLoadImage(char const*, unsigned long, pxOffscreen&, int, int) /home/sw/projects/pxscene/pxCore/src/pxUtil.cpp:106
    #3 0x6bc75b in pxUtilTest::pxLoadImage3ArgsLessLengthFailureTest() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/test_pxUtil.cpp:160
    #4 0x6bc75b in pxUtilTest_pxutilsTest_Test::TestBody() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/test_pxUtil.cpp:372
    #5 0x87b623 in void testing::internal::HandleSehExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:2402
    #6 0x87b623 in void testing::internal::HandleExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:2438
    #7 0x84c7d5 in testing::Test::Run() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:2474
    #8 0x84cb37 in testing::TestInfo::Run() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:2656
    #9 0x84cef4 in testing::TestCase::Run() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:2774
    #10 0x84e361 in testing::internal::UnitTestImpl::RunAllTests() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:4649
    #11 0x84eddd in bool testing::internal::HandleSehExceptionsInMethodIfSupported<testing::internal::UnitTestImpl, bool>(testing::internal::UnitTestImpl*, bool (testing::internal::UnitTestImpl::*)(), char const*) /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:2402
    #12 0x84eddd in bool testing::internal::HandleExceptionsInMethodIfSupported<testing::internal::UnitTestImpl, bool>(testing::internal::UnitTestImpl*, bool (testing::internal::UnitTestImpl::*)(), char const*) /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:2438
    #13 0x84eddd in testing::UnitTest::Run() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:4257
    #14 0x4d3591 in RUN_ALL_TESTS() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/include/gtest/gtest.h:2233
    #15 0x4d3591 in main /home/sw/projects/pxscene/pxCore/tests/pxScene2d/pxscene2dtestsmain.cpp:119
    #16 0x7fef8cb0518a in __libc_start_main ../csu/libc-start.c:308
    #17 0x5011a9 in _start (/home/sw/projects/pxscene/pxCore/tests/pxScene2d/pxscene2dtests+0x5011a9)

0x602000057c90 is located 0 bytes inside of 16-byte region [0x602000057c90,0x602000057ca0)
allocated by thread T0 here:
    #0 0x7fef91d3de50 in calloc (/lib64/libasan.so.5+0xeee50)
    #1 0xa5c705 in nsvg__createParser /home/sw/projects/pxscene/pxCore/src/../examples/pxScene2d/external/nanosvg/src/nanosvg.h:619
    #2 0xa5c705 in nsvgParse /home/sw/projects/pxscene/pxCore/src/../examples/pxScene2d/external/nanosvg/src/nanosvg.h:2861
    #3 0xa66e0f in pxLoadSVGImage(char const*, unsigned long, pxOffscreen&, int, int) /home/sw/projects/pxscene/pxCore/src/pxUtil.cpp:988
    #4 0xa6879b in pxLoadImage(char const*, unsigned long, pxOffscreen&, int, int) /home/sw/projects/pxscene/pxCore/src/pxUtil.cpp:106
    #5 0x6bc75b in pxUtilTest::pxLoadImage3ArgsLessLengthFailureTest() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/test_pxUtil.cpp:160
    #6 0x6bc75b in pxUtilTest_pxutilsTest_Test::TestBody() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/test_pxUtil.cpp:372
    #7 0x87b623 in void testing::internal::HandleSehExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:2402
    #8 0x87b623 in void testing::internal::HandleExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:2438
    #9 0x84c7d5 in testing::Test::Run() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:2474
    #10 0x84cb37 in testing::TestInfo::Run() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:2656
    #11 0x84cef4 in testing::TestCase::Run() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:2774
    #12 0x84e361 in testing::internal::UnitTestImpl::RunAllTests() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:4649
    #13 0x84eddd in bool testing::internal::HandleSehExceptionsInMethodIfSupported<testing::internal::UnitTestImpl, bool>(testing::internal::UnitTestImpl*, bool (testing::internal::UnitTestImpl::*)(), char const*) /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:2402
    #14 0x84eddd in bool testing::internal::HandleExceptionsInMethodIfSupported<testing::internal::UnitTestImpl, bool>(testing::internal::UnitTestImpl*, bool (testing::internal::UnitTestImpl::*)(), char const*) /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:2438
    #15 0x84eddd in testing::UnitTest::Run() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:4257
    #16 0x4d3591 in RUN_ALL_TESTS() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/include/gtest/gtest.h:2233
    #17 0x4d3591 in main /home/sw/projects/pxscene/pxCore/tests/pxScene2d/pxscene2dtestsmain.cpp:119
    #18 0x7fef8cb0518a in __libc_start_main ../csu/libc-start.c:308

SUMMARY: AddressSanitizer: alloc-dealloc-mismatch (/lib64/libasan.so.5+0xf1748) in operator delete(void*)
dwrobel added a commit that referenced this pull request Jun 19, 2018
Fixes the following issue:

=================================================================
==12472==ERROR: AddressSanitizer: alloc-dealloc-mismatch (malloc vs operator delete) on 0x602000057c90
    #0 0x7fef91d40748 in operator delete(void*) (/lib64/libasan.so.5+0xf1748)
    #1 0xa67017 in pxLoadSVGImage(char const*, unsigned long, pxOffscreen&, int, int)
pxLoadSVGImage(char const*, unsigned long, pxOffscreen&, int, int) /home/sw/projects/pxscene/pxCore/src/pxUtil.cpp:1005
    #2 0xa6879b in pxLoadImage(char const*, unsigned long, pxOffscreen&, int, int) /home/sw/projects/pxscene/pxCore/src/pxUtil.cpp:106
    #3 0x6bc75b in pxUtilTest::pxLoadImage3ArgsLessLengthFailureTest() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/test_pxUtil.cpp:160
    #4 0x6bc75b in pxUtilTest_pxutilsTest_Test::TestBody() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/test_pxUtil.cpp:372
    #5 0x87b623 in void testing::internal::HandleSehExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:2402
    #6 0x87b623 in void testing::internal::HandleExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:2438
    #7 0x84c7d5 in testing::Test::Run() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:2474
    #8 0x84cb37 in testing::TestInfo::Run() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:2656
    #9 0x84cef4 in testing::TestCase::Run() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:2774
    #10 0x84e361 in testing::internal::UnitTestImpl::RunAllTests() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:4649
    #11 0x84eddd in bool testing::internal::HandleSehExceptionsInMethodIfSupported<testing::internal::UnitTestImpl, bool>(testing::internal::UnitTestImpl*, bool (testing::internal::UnitTestImpl::*)(), char const*) /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:2402
    #12 0x84eddd in bool testing::internal::HandleExceptionsInMethodIfSupported<testing::internal::UnitTestImpl, bool>(testing::internal::UnitTestImpl*, bool (testing::internal::UnitTestImpl::*)(), char const*) /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:2438
    #13 0x84eddd in testing::UnitTest::Run() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:4257
    #14 0x4d3591 in RUN_ALL_TESTS() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/include/gtest/gtest.h:2233
    #15 0x4d3591 in main /home/sw/projects/pxscene/pxCore/tests/pxScene2d/pxscene2dtestsmain.cpp:119
    #16 0x7fef8cb0518a in __libc_start_main ../csu/libc-start.c:308
    #17 0x5011a9 in _start (/home/sw/projects/pxscene/pxCore/tests/pxScene2d/pxscene2dtests+0x5011a9)

0x602000057c90 is located 0 bytes inside of 16-byte region [0x602000057c90,0x602000057ca0)
allocated by thread T0 here:
    #0 0x7fef91d3de50 in calloc (/lib64/libasan.so.5+0xeee50)
    #1 0xa5c705 in nsvg__createParser /home/sw/projects/pxscene/pxCore/src/../examples/pxScene2d/external/nanosvg/src/nanosvg.h:619
    #2 0xa5c705 in nsvgParse /home/sw/projects/pxscene/pxCore/src/../examples/pxScene2d/external/nanosvg/src/nanosvg.h:2861
    #3 0xa66e0f in pxLoadSVGImage(char const*, unsigned long, pxOffscreen&, int, int) /home/sw/projects/pxscene/pxCore/src/pxUtil.cpp:988
    #4 0xa6879b in pxLoadImage(char const*, unsigned long, pxOffscreen&, int, int) /home/sw/projects/pxscene/pxCore/src/pxUtil.cpp:106
    #5 0x6bc75b in pxUtilTest::pxLoadImage3ArgsLessLengthFailureTest() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/test_pxUtil.cpp:160
    #6 0x6bc75b in pxUtilTest_pxutilsTest_Test::TestBody() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/test_pxUtil.cpp:372
    #7 0x87b623 in void testing::internal::HandleSehExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:2402
    #8 0x87b623 in void testing::internal::HandleExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:2438
    #9 0x84c7d5 in testing::Test::Run() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:2474
    #10 0x84cb37 in testing::TestInfo::Run() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:2656
    #11 0x84cef4 in testing::TestCase::Run() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:2774
    #12 0x84e361 in testing::internal::UnitTestImpl::RunAllTests() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:4649
    #13 0x84eddd in bool testing::internal::HandleSehExceptionsInMethodIfSupported<testing::internal::UnitTestImpl, bool>(testing::internal::UnitTestImpl*, bool (testing::internal::UnitTestImpl::*)(), char const*) /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:2402
    #14 0x84eddd in bool testing::internal::HandleExceptionsInMethodIfSupported<testing::internal::UnitTestImpl, bool>(testing::internal::UnitTestImpl*, bool (testing::internal::UnitTestImpl::*)(), char const*) /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:2438
    #15 0x84eddd in testing::UnitTest::Run() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:4257
    #16 0x4d3591 in RUN_ALL_TESTS() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/include/gtest/gtest.h:2233
    #17 0x4d3591 in main /home/sw/projects/pxscene/pxCore/tests/pxScene2d/pxscene2dtestsmain.cpp:119
    #18 0x7fef8cb0518a in __libc_start_main ../csu/libc-start.c:308

SUMMARY: AddressSanitizer: alloc-dealloc-mismatch (/lib64/libasan.so.5+0xf1748) in operator delete(void*)

updated freetype.vcxproj for newer version (not merged yet)

commit f3c9881
Author: arun-govindan <[email protected]>
Date:   Mon Jun 11 11:57:12 2018 -0400

    updated freetype.vcxproj for newer version

commit 947332a
Author: arun-govindan <[email protected]>
Date:   Thu Jun 7 10:18:05 2018 -0400

    Removing the older version

commit aaf3eb7
Author: arun-govindan <[email protected]>
Date:   Fri Jun 8 10:31:34 2018 -0400

    Modifications required to support new freetype

commit 901d487
Author: arun-govindan <[email protected]>
Date:   Thu Jun 7 09:17:58 2018 -0400

    Moving to freetype-2.8.1
dwrobel added a commit that referenced this pull request Jun 19, 2018
Fixes the following issue:

    =================================================================
    ==12472==ERROR: AddressSanitizer: alloc-dealloc-mismatch (malloc vs operator delete) on 0x602000057c90
        #0 0x7fef91d40748 in operator delete(void*) (/lib64/libasan.so.5+0xf1748)
        #1 0xa67017 in pxLoadSVGImage(char const*, unsigned long, pxOffscreen&, int, int)
    pxLoadSVGImage(char const*, unsigned long, pxOffscreen&, int, int) /home/sw/projects/pxscene/pxCore/src/pxUtil.cpp:1005
        #2 0xa6879b in pxLoadImage(char const*, unsigned long, pxOffscreen&, int, int) /home/sw/projects/pxscene/pxCore/src/pxUtil.cpp:106
        #3 0x6bc75b in pxUtilTest::pxLoadImage3ArgsLessLengthFailureTest() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/test_pxUtil.cpp:160
        #4 0x6bc75b in pxUtilTest_pxutilsTest_Test::TestBody() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/test_pxUtil.cpp:372
        #5 0x87b623 in void testing::internal::HandleSehExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:2402
        #6 0x87b623 in void testing::internal::HandleExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:2438
        #7 0x84c7d5 in testing::Test::Run() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:2474
        #8 0x84cb37 in testing::TestInfo::Run() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:2656
        #9 0x84cef4 in testing::TestCase::Run() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:2774
        #10 0x84e361 in testing::internal::UnitTestImpl::RunAllTests() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:4649
        #11 0x84eddd in bool testing::internal::HandleSehExceptionsInMethodIfSupported<testing::internal::UnitTestImpl, bool>(testing::internal::UnitTestImpl*, bool (testing::internal::UnitTestImpl::*)(), char const*) /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:2402
        #12 0x84eddd in bool testing::internal::HandleExceptionsInMethodIfSupported<testing::internal::UnitTestImpl, bool>(testing::internal::UnitTestImpl*, bool (testing::internal::UnitTestImpl::*)(), char const*) /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:2438
        #13 0x84eddd in testing::UnitTest::Run() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:4257
        #14 0x4d3591 in RUN_ALL_TESTS() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/include/gtest/gtest.h:2233
        #15 0x4d3591 in main /home/sw/projects/pxscene/pxCore/tests/pxScene2d/pxscene2dtestsmain.cpp:119
        #16 0x7fef8cb0518a in __libc_start_main ../csu/libc-start.c:308
        #17 0x5011a9 in _start (/home/sw/projects/pxscene/pxCore/tests/pxScene2d/pxscene2dtests+0x5011a9)

    0x602000057c90 is located 0 bytes inside of 16-byte region [0x602000057c90,0x602000057ca0)
    allocated by thread T0 here:
        #0 0x7fef91d3de50 in calloc (/lib64/libasan.so.5+0xeee50)
        #1 0xa5c705 in nsvg__createParser /home/sw/projects/pxscene/pxCore/src/../examples/pxScene2d/external/nanosvg/src/nanosvg.h:619
        #2 0xa5c705 in nsvgParse /home/sw/projects/pxscene/pxCore/src/../examples/pxScene2d/external/nanosvg/src/nanosvg.h:2861
        #3 0xa66e0f in pxLoadSVGImage(char const*, unsigned long, pxOffscreen&, int, int) /home/sw/projects/pxscene/pxCore/src/pxUtil.cpp:988
        #4 0xa6879b in pxLoadImage(char const*, unsigned long, pxOffscreen&, int, int) /home/sw/projects/pxscene/pxCore/src/pxUtil.cpp:106
        #5 0x6bc75b in pxUtilTest::pxLoadImage3ArgsLessLengthFailureTest() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/test_pxUtil.cpp:160
        #6 0x6bc75b in pxUtilTest_pxutilsTest_Test::TestBody() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/test_pxUtil.cpp:372
        #7 0x87b623 in void testing::internal::HandleSehExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:2402
        #8 0x87b623 in void testing::internal::HandleExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:2438
        #9 0x84c7d5 in testing::Test::Run() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:2474
        #10 0x84cb37 in testing::TestInfo::Run() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:2656
        #11 0x84cef4 in testing::TestCase::Run() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:2774
        #12 0x84e361 in testing::internal::UnitTestImpl::RunAllTests() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:4649
        #13 0x84eddd in bool testing::internal::HandleSehExceptionsInMethodIfSupported<testing::internal::UnitTestImpl, bool>(testing::internal::UnitTestImpl*, bool (testing::internal::UnitTestImpl::*)(), char const*) /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:2402
        #14 0x84eddd in bool testing::internal::HandleExceptionsInMethodIfSupported<testing::internal::UnitTestImpl, bool>(testing::internal::UnitTestImpl*, bool (testing::internal::UnitTestImpl::*)(), char const*) /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:2438
        #15 0x84eddd in testing::UnitTest::Run() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:4257
        #16 0x4d3591 in RUN_ALL_TESTS() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/include/gtest/gtest.h:2233
        #17 0x4d3591 in main /home/sw/projects/pxscene/pxCore/tests/pxScene2d/pxscene2dtestsmain.cpp:119
        #18 0x7fef8cb0518a in __libc_start_main ../csu/libc-start.c:308

    SUMMARY: AddressSanitizer: alloc-dealloc-mismatch (/lib64/libasan.so.5+0xf1748) in operator delete(void*)
dwrobel added a commit that referenced this pull request Jun 19, 2018
Fixes the following issue:

    =================================================================
    ==12472==ERROR: AddressSanitizer: alloc-dealloc-mismatch (malloc vs operator delete) on 0x602000057c90
        #0 0x7fef91d40748 in operator delete(void*) (/lib64/libasan.so.5+0xf1748)
        #1 0xa67017 in pxLoadSVGImage(char const*, unsigned long, pxOffscreen&, int, int)
    pxLoadSVGImage(char const*, unsigned long, pxOffscreen&, int, int) /home/sw/projects/pxscene/pxCore/src/pxUtil.cpp:1005
        #2 0xa6879b in pxLoadImage(char const*, unsigned long, pxOffscreen&, int, int) /home/sw/projects/pxscene/pxCore/src/pxUtil.cpp:106
        #3 0x6bc75b in pxUtilTest::pxLoadImage3ArgsLessLengthFailureTest() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/test_pxUtil.cpp:160
        #4 0x6bc75b in pxUtilTest_pxutilsTest_Test::TestBody() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/test_pxUtil.cpp:372
        #5 0x87b623 in void testing::internal::HandleSehExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:2402
        #6 0x87b623 in void testing::internal::HandleExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:2438
        #7 0x84c7d5 in testing::Test::Run() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:2474
        #8 0x84cb37 in testing::TestInfo::Run() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:2656
        #9 0x84cef4 in testing::TestCase::Run() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:2774
        #10 0x84e361 in testing::internal::UnitTestImpl::RunAllTests() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:4649
        #11 0x84eddd in bool testing::internal::HandleSehExceptionsInMethodIfSupported<testing::internal::UnitTestImpl, bool>(testing::internal::UnitTestImpl*, bool (testing::internal::UnitTestImpl::*)(), char const*) /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:2402
        #12 0x84eddd in bool testing::internal::HandleExceptionsInMethodIfSupported<testing::internal::UnitTestImpl, bool>(testing::internal::UnitTestImpl*, bool (testing::internal::UnitTestImpl::*)(), char const*) /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:2438
        #13 0x84eddd in testing::UnitTest::Run() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:4257
        #14 0x4d3591 in RUN_ALL_TESTS() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/include/gtest/gtest.h:2233
        #15 0x4d3591 in main /home/sw/projects/pxscene/pxCore/tests/pxScene2d/pxscene2dtestsmain.cpp:119
        #16 0x7fef8cb0518a in __libc_start_main ../csu/libc-start.c:308
        #17 0x5011a9 in _start (/home/sw/projects/pxscene/pxCore/tests/pxScene2d/pxscene2dtests+0x5011a9)

    0x602000057c90 is located 0 bytes inside of 16-byte region [0x602000057c90,0x602000057ca0)
    allocated by thread T0 here:
        #0 0x7fef91d3de50 in calloc (/lib64/libasan.so.5+0xeee50)
        #1 0xa5c705 in nsvg__createParser /home/sw/projects/pxscene/pxCore/src/../examples/pxScene2d/external/nanosvg/src/nanosvg.h:619
        #2 0xa5c705 in nsvgParse /home/sw/projects/pxscene/pxCore/src/../examples/pxScene2d/external/nanosvg/src/nanosvg.h:2861
        #3 0xa66e0f in pxLoadSVGImage(char const*, unsigned long, pxOffscreen&, int, int) /home/sw/projects/pxscene/pxCore/src/pxUtil.cpp:988
        #4 0xa6879b in pxLoadImage(char const*, unsigned long, pxOffscreen&, int, int) /home/sw/projects/pxscene/pxCore/src/pxUtil.cpp:106
        #5 0x6bc75b in pxUtilTest::pxLoadImage3ArgsLessLengthFailureTest() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/test_pxUtil.cpp:160
        #6 0x6bc75b in pxUtilTest_pxutilsTest_Test::TestBody() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/test_pxUtil.cpp:372
        #7 0x87b623 in void testing::internal::HandleSehExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:2402
        #8 0x87b623 in void testing::internal::HandleExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:2438
        #9 0x84c7d5 in testing::Test::Run() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:2474
        #10 0x84cb37 in testing::TestInfo::Run() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:2656
        #11 0x84cef4 in testing::TestCase::Run() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:2774
        #12 0x84e361 in testing::internal::UnitTestImpl::RunAllTests() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:4649
        #13 0x84eddd in bool testing::internal::HandleSehExceptionsInMethodIfSupported<testing::internal::UnitTestImpl, bool>(testing::internal::UnitTestImpl*, bool (testing::internal::UnitTestImpl::*)(), char const*) /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:2402
        #14 0x84eddd in bool testing::internal::HandleExceptionsInMethodIfSupported<testing::internal::UnitTestImpl, bool>(testing::internal::UnitTestImpl*, bool (testing::internal::UnitTestImpl::*)(), char const*) /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:2438
        #15 0x84eddd in testing::UnitTest::Run() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:4257
        #16 0x4d3591 in RUN_ALL_TESTS() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/include/gtest/gtest.h:2233
        #17 0x4d3591 in main /home/sw/projects/pxscene/pxCore/tests/pxScene2d/pxscene2dtestsmain.cpp:119
        #18 0x7fef8cb0518a in __libc_start_main ../csu/libc-start.c:308

    SUMMARY: AddressSanitizer: alloc-dealloc-mismatch (/lib64/libasan.so.5+0xf1748) in operator delete(void*)
dwrobel added a commit that referenced this pull request Jun 19, 2018
Fixes the following issue:

    =================================================================
    ==12472==ERROR: AddressSanitizer: alloc-dealloc-mismatch (malloc vs operator delete) on 0x602000057c90
        #0 0x7fef91d40748 in operator delete(void*) (/lib64/libasan.so.5+0xf1748)
        #1 0xa67017 in pxLoadSVGImage(char const*, unsigned long, pxOffscreen&, int, int)
    pxLoadSVGImage(char const*, unsigned long, pxOffscreen&, int, int) /home/sw/projects/pxscene/pxCore/src/pxUtil.cpp:1005
        #2 0xa6879b in pxLoadImage(char const*, unsigned long, pxOffscreen&, int, int) /home/sw/projects/pxscene/pxCore/src/pxUtil.cpp:106
        #3 0x6bc75b in pxUtilTest::pxLoadImage3ArgsLessLengthFailureTest() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/test_pxUtil.cpp:160
        #4 0x6bc75b in pxUtilTest_pxutilsTest_Test::TestBody() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/test_pxUtil.cpp:372
        #5 0x87b623 in void testing::internal::HandleSehExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:2402
        #6 0x87b623 in void testing::internal::HandleExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:2438
        #7 0x84c7d5 in testing::Test::Run() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:2474
        #8 0x84cb37 in testing::TestInfo::Run() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:2656
        #9 0x84cef4 in testing::TestCase::Run() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:2774
        #10 0x84e361 in testing::internal::UnitTestImpl::RunAllTests() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:4649
        #11 0x84eddd in bool testing::internal::HandleSehExceptionsInMethodIfSupported<testing::internal::UnitTestImpl, bool>(testing::internal::UnitTestImpl*, bool (testing::internal::UnitTestImpl::*)(), char const*) /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:2402
        #12 0x84eddd in bool testing::internal::HandleExceptionsInMethodIfSupported<testing::internal::UnitTestImpl, bool>(testing::internal::UnitTestImpl*, bool (testing::internal::UnitTestImpl::*)(), char const*) /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:2438
        #13 0x84eddd in testing::UnitTest::Run() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:4257
        #14 0x4d3591 in RUN_ALL_TESTS() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/include/gtest/gtest.h:2233
        #15 0x4d3591 in main /home/sw/projects/pxscene/pxCore/tests/pxScene2d/pxscene2dtestsmain.cpp:119
        #16 0x7fef8cb0518a in __libc_start_main ../csu/libc-start.c:308
        #17 0x5011a9 in _start (/home/sw/projects/pxscene/pxCore/tests/pxScene2d/pxscene2dtests+0x5011a9)

    0x602000057c90 is located 0 bytes inside of 16-byte region [0x602000057c90,0x602000057ca0)
    allocated by thread T0 here:
        #0 0x7fef91d3de50 in calloc (/lib64/libasan.so.5+0xeee50)
        #1 0xa5c705 in nsvg__createParser /home/sw/projects/pxscene/pxCore/src/../examples/pxScene2d/external/nanosvg/src/nanosvg.h:619
        #2 0xa5c705 in nsvgParse /home/sw/projects/pxscene/pxCore/src/../examples/pxScene2d/external/nanosvg/src/nanosvg.h:2861
        #3 0xa66e0f in pxLoadSVGImage(char const*, unsigned long, pxOffscreen&, int, int) /home/sw/projects/pxscene/pxCore/src/pxUtil.cpp:988
        #4 0xa6879b in pxLoadImage(char const*, unsigned long, pxOffscreen&, int, int) /home/sw/projects/pxscene/pxCore/src/pxUtil.cpp:106
        #5 0x6bc75b in pxUtilTest::pxLoadImage3ArgsLessLengthFailureTest() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/test_pxUtil.cpp:160
        #6 0x6bc75b in pxUtilTest_pxutilsTest_Test::TestBody() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/test_pxUtil.cpp:372
        #7 0x87b623 in void testing::internal::HandleSehExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:2402
        #8 0x87b623 in void testing::internal::HandleExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:2438
        #9 0x84c7d5 in testing::Test::Run() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:2474
        #10 0x84cb37 in testing::TestInfo::Run() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:2656
        #11 0x84cef4 in testing::TestCase::Run() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:2774
        #12 0x84e361 in testing::internal::UnitTestImpl::RunAllTests() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:4649
        #13 0x84eddd in bool testing::internal::HandleSehExceptionsInMethodIfSupported<testing::internal::UnitTestImpl, bool>(testing::internal::UnitTestImpl*, bool (testing::internal::UnitTestImpl::*)(), char const*) /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:2402
        #14 0x84eddd in bool testing::internal::HandleExceptionsInMethodIfSupported<testing::internal::UnitTestImpl, bool>(testing::internal::UnitTestImpl*, bool (testing::internal::UnitTestImpl::*)(), char const*) /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:2438
        #15 0x84eddd in testing::UnitTest::Run() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:4257
        #16 0x4d3591 in RUN_ALL_TESTS() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/include/gtest/gtest.h:2233
        #17 0x4d3591 in main /home/sw/projects/pxscene/pxCore/tests/pxScene2d/pxscene2dtestsmain.cpp:119
        #18 0x7fef8cb0518a in __libc_start_main ../csu/libc-start.c:308

    SUMMARY: AddressSanitizer: alloc-dealloc-mismatch (/lib64/libasan.so.5+0xf1748) in operator delete(void*)
dwrobel added a commit that referenced this pull request Jun 20, 2018
… (pxscene#1253)

Fixes the following issue:

    =================================================================
    ==12472==ERROR: AddressSanitizer: alloc-dealloc-mismatch (malloc vs operator delete) on 0x602000057c90
        #0 0x7fef91d40748 in operator delete(void*) (/lib64/libasan.so.5+0xf1748)
        #1 0xa67017 in pxLoadSVGImage(char const*, unsigned long, pxOffscreen&, int, int)
    pxLoadSVGImage(char const*, unsigned long, pxOffscreen&, int, int) /home/sw/projects/pxscene/pxCore/src/pxUtil.cpp:1005
        #2 0xa6879b in pxLoadImage(char const*, unsigned long, pxOffscreen&, int, int) /home/sw/projects/pxscene/pxCore/src/pxUtil.cpp:106
        #3 0x6bc75b in pxUtilTest::pxLoadImage3ArgsLessLengthFailureTest() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/test_pxUtil.cpp:160
        #4 0x6bc75b in pxUtilTest_pxutilsTest_Test::TestBody() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/test_pxUtil.cpp:372
        #5 0x87b623 in void testing::internal::HandleSehExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:2402
        #6 0x87b623 in void testing::internal::HandleExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:2438
        #7 0x84c7d5 in testing::Test::Run() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:2474
        #8 0x84cb37 in testing::TestInfo::Run() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:2656
        #9 0x84cef4 in testing::TestCase::Run() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:2774
        #10 0x84e361 in testing::internal::UnitTestImpl::RunAllTests() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:4649
        #11 0x84eddd in bool testing::internal::HandleSehExceptionsInMethodIfSupported<testing::internal::UnitTestImpl, bool>(testing::internal::UnitTestImpl*, bool (testing::internal::UnitTestImpl::*)(), char const*) /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:2402
        #12 0x84eddd in bool testing::internal::HandleExceptionsInMethodIfSupported<testing::internal::UnitTestImpl, bool>(testing::internal::UnitTestImpl*, bool (testing::internal::UnitTestImpl::*)(), char const*) /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:2438
        #13 0x84eddd in testing::UnitTest::Run() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:4257
        #14 0x4d3591 in RUN_ALL_TESTS() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/include/gtest/gtest.h:2233
        #15 0x4d3591 in main /home/sw/projects/pxscene/pxCore/tests/pxScene2d/pxscene2dtestsmain.cpp:119
        #16 0x7fef8cb0518a in __libc_start_main ../csu/libc-start.c:308
        #17 0x5011a9 in _start (/home/sw/projects/pxscene/pxCore/tests/pxScene2d/pxscene2dtests+0x5011a9)

    0x602000057c90 is located 0 bytes inside of 16-byte region [0x602000057c90,0x602000057ca0)
    allocated by thread T0 here:
        #0 0x7fef91d3de50 in calloc (/lib64/libasan.so.5+0xeee50)
        #1 0xa5c705 in nsvg__createParser /home/sw/projects/pxscene/pxCore/src/../examples/pxScene2d/external/nanosvg/src/nanosvg.h:619
        #2 0xa5c705 in nsvgParse /home/sw/projects/pxscene/pxCore/src/../examples/pxScene2d/external/nanosvg/src/nanosvg.h:2861
        #3 0xa66e0f in pxLoadSVGImage(char const*, unsigned long, pxOffscreen&, int, int) /home/sw/projects/pxscene/pxCore/src/pxUtil.cpp:988
        #4 0xa6879b in pxLoadImage(char const*, unsigned long, pxOffscreen&, int, int) /home/sw/projects/pxscene/pxCore/src/pxUtil.cpp:106
        #5 0x6bc75b in pxUtilTest::pxLoadImage3ArgsLessLengthFailureTest() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/test_pxUtil.cpp:160
        #6 0x6bc75b in pxUtilTest_pxutilsTest_Test::TestBody() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/test_pxUtil.cpp:372
        #7 0x87b623 in void testing::internal::HandleSehExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:2402
        #8 0x87b623 in void testing::internal::HandleExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:2438
        #9 0x84c7d5 in testing::Test::Run() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:2474
        #10 0x84cb37 in testing::TestInfo::Run() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:2656
        #11 0x84cef4 in testing::TestCase::Run() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:2774
        #12 0x84e361 in testing::internal::UnitTestImpl::RunAllTests() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:4649
        #13 0x84eddd in bool testing::internal::HandleSehExceptionsInMethodIfSupported<testing::internal::UnitTestImpl, bool>(testing::internal::UnitTestImpl*, bool (testing::internal::UnitTestImpl::*)(), char const*) /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:2402
        #14 0x84eddd in bool testing::internal::HandleExceptionsInMethodIfSupported<testing::internal::UnitTestImpl, bool>(testing::internal::UnitTestImpl*, bool (testing::internal::UnitTestImpl::*)(), char const*) /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:2438
        #15 0x84eddd in testing::UnitTest::Run() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/src/gtest.cc:4257
        #16 0x4d3591 in RUN_ALL_TESTS() /home/sw/projects/pxscene/pxCore/tests/pxScene2d/../../examples/pxScene2d/external/gtest/googletest/include/gtest/gtest.h:2233
        #17 0x4d3591 in main /home/sw/projects/pxscene/pxCore/tests/pxScene2d/pxscene2dtestsmain.cpp:119
        #18 0x7fef8cb0518a in __libc_start_main ../csu/libc-start.c:308

    SUMMARY: AddressSanitizer: alloc-dealloc-mismatch (/lib64/libasan.so.5+0xf1748) in operator delete(void*)
dwrobel pushed a commit that referenced this pull request Jul 5, 2018
This reverts commit f54a4fd.

Causes the following regression:

wayland backend:
==25290==ERROR: AddressSanitizer: SEGV on unknown address 0x000000000000 (pc 0x0000004fde20 bp 0x7ffc1cf21870 sp 0x7ffc1cf21830 T0)
==25290==The signal is caused by a READ memory access.
==25290==Hint: address points to the zero page.
    #0 0x4fde1f in rtImageResource::getTexture(bool) pxCore/examples/pxScene2d/src/pxResource.cpp:399
    #1 0x4fe435 in rtImageResource::setupResource() pxCore/examples/pxScene2d/src/pxResource.cpp:453
    #2 0x4fed99 in pxResource::onDownloadCompleteUI(void*, void*) pxCore/examples/pxScene2d/src/pxResource.cpp:520
    #3 0x655907 in rtThreadQueue::process(double) pxCore/src/rtThreadQueue.cpp:77
    #4 0x591566 in pxScene2d::onUpdate(double) pxCore/examples/pxScene2d/src/pxScene2d.cpp:2529
    #5 0x5c3e4a in pxScriptView::onUpdate(double) (pxCore/examples/pxScene2d/src/pxscene+0x5c3e4a)
    #6 0x63a1c4 in sceneWindow::onAnimationTimer() pxCore/examples/pxScene2d/src/pxScene.cpp:387
    #7 0x647fb7 in pxWindowNative::onAnimationTimerInternal() pxCore/src/wayland_egl/pxWindowNative.cpp:496
    #8 0x64a097 in pxWindowNative::animateAndRender() pxCore/src/wayland_egl/pxWindowNative.cpp:863
    #9 0x648ccd in pxWindowNative::runEventLoop() pxCore/src/wayland_egl/pxWindowNative.cpp:602
    #10 0x652205 in pxEventLoop::run() pxCore/src/wayland_egl/pxEventLoopNative.cpp:35
    #11 0x637efc in pxMain(int, char**) pxCore/examples/pxScene2d/src/pxScene.cpp:679
    #12 0x652283 in main pxCore/src/wayland_egl/pxEventLoopNative.cpp:50
    #13 0x7f6887c7d18a in __libc_start_main ../csu/libc-start.c:308
    #14 0x4fac49 in _start (pxCore/examples/pxScene2d/src/pxscene+0x4fac49)

AddressSanitizer can not provide additional info.
SUMMARY: AddressSanitizer: SEGV pxCore/examples/pxScene2d/src/pxResource.cpp:399 in rtImageResource::getTexture(bool)
==25290==ABORTING

glut backend:

 #0  0x00000000004fde20 in rtImageResource::getTexture (this=0x613000025500, initializing=true) at pxCore/examples/pxScene2d/src/pxResource.cpp:399
 #1  0x00000000004fe436 in rtImageResource::setupResource (this=0x613000025500) at pxCore/examples/pxScene2d/src/pxResource.cpp:453
 #2  0x00000000004fed9a in pxResource::onDownloadCompleteUI (context=0x613000025500, data=0x7d8840) at pxCore/examples/pxScene2d/src/pxResource.cpp:520
 #3  0x0000000000655908 in rtThreadQueue::process (this=0x60c000000100, maxSeconds=0.01) at pxCore/src/rtThreadQueue.cpp:77
 #4  0x0000000000591567 in pxScene2d::onUpdate (this=0x614000066a40, t=113939.38154799999) at pxCore/examples/pxScene2d/src/pxScene2d.cpp:2529
 #5  0x00000000005c3e4b in pxScriptView::onUpdate (this=0x610000047140, t=113939.38154799999) at pxCore/examples/pxScene2d/src/pxScene2d.h:1272
 #6  0x000000000063a1c5 in sceneWindow::onAnimationTimer (this=0xadeb00 <win>) at pxCore/examples/pxScene2d/src/pxScene.cpp:387
 #7  0x0000000000647fb8 in pxWindowNative::onAnimationTimerInternal (this=0xadeb00 <win>) at pxCore/src/wayland_egl/pxWindowNative.cpp:496
 #8  0x000000000064a098 in pxWindowNative::animateAndRender (this=0xadeb00 <win>) at pxCore/src/wayland_egl/pxWindowNative.cpp:863
 #9  0x0000000000648cce in pxWindowNative::runEventLoop () at pxCore/src/wayland_egl/pxWindowNative.cpp:602
 #10 0x0000000000652206 in pxEventLoop::run (this=0xade9a0 <eventLoop>) at pxCore/src/wayland_egl/pxEventLoopNative.cpp:35
 #11 0x0000000000637efd in pxMain (argc=3, argv=0x7ffc55df3538) at pxCore/examples/pxScene2d/src/pxScene.cpp:679
 #12 0x0000000000652284 in main (argc=3, argv=0x7ffc55df3538) at pxCore/src/wayland_egl/pxEventLoopNative.cpp:50
 (gdb) frame 0
 #0  0x00000000004fde20 in rtImageResource::getTexture (this=0x613000025500, initializing=true) at pxCore/examples/pxScene2d/src/pxResource.cpp:399
 (gdb) p mTexture
 $1 = {_vptr.rtRef = 0xa99740 <vtable for rtRef<pxTexture>+16>, mRef = 0x0}
 (gdb)
dwrobel pushed a commit that referenced this pull request Jul 6, 2018
This reverts commit f54a4fd.

Causes the following regression:

wayland backend:
==25290==ERROR: AddressSanitizer: SEGV on unknown address 0x000000000000 (pc 0x0000004fde20 bp 0x7ffc1cf21870 sp 0x7ffc1cf21830 T0)
==25290==The signal is caused by a READ memory access.
==25290==Hint: address points to the zero page.
    #0 0x4fde1f in rtImageResource::getTexture(bool) pxCore/examples/pxScene2d/src/pxResource.cpp:399
    #1 0x4fe435 in rtImageResource::setupResource() pxCore/examples/pxScene2d/src/pxResource.cpp:453
    #2 0x4fed99 in pxResource::onDownloadCompleteUI(void*, void*) pxCore/examples/pxScene2d/src/pxResource.cpp:520
    #3 0x655907 in rtThreadQueue::process(double) pxCore/src/rtThreadQueue.cpp:77
    #4 0x591566 in pxScene2d::onUpdate(double) pxCore/examples/pxScene2d/src/pxScene2d.cpp:2529
    #5 0x5c3e4a in pxScriptView::onUpdate(double) (pxCore/examples/pxScene2d/src/pxscene+0x5c3e4a)
    #6 0x63a1c4 in sceneWindow::onAnimationTimer() pxCore/examples/pxScene2d/src/pxScene.cpp:387
    #7 0x647fb7 in pxWindowNative::onAnimationTimerInternal() pxCore/src/wayland_egl/pxWindowNative.cpp:496
    #8 0x64a097 in pxWindowNative::animateAndRender() pxCore/src/wayland_egl/pxWindowNative.cpp:863
    #9 0x648ccd in pxWindowNative::runEventLoop() pxCore/src/wayland_egl/pxWindowNative.cpp:602
    #10 0x652205 in pxEventLoop::run() pxCore/src/wayland_egl/pxEventLoopNative.cpp:35
    #11 0x637efc in pxMain(int, char**) pxCore/examples/pxScene2d/src/pxScene.cpp:679
    #12 0x652283 in main pxCore/src/wayland_egl/pxEventLoopNative.cpp:50
    #13 0x7f6887c7d18a in __libc_start_main ../csu/libc-start.c:308
    #14 0x4fac49 in _start (pxCore/examples/pxScene2d/src/pxscene+0x4fac49)

AddressSanitizer can not provide additional info.
SUMMARY: AddressSanitizer: SEGV pxCore/examples/pxScene2d/src/pxResource.cpp:399 in rtImageResource::getTexture(bool)
==25290==ABORTING

glut backend:

 #0  0x00000000004fde20 in rtImageResource::getTexture (this=0x613000025500, initializing=true) at pxCore/examples/pxScene2d/src/pxResource.cpp:399
 #1  0x00000000004fe436 in rtImageResource::setupResource (this=0x613000025500) at pxCore/examples/pxScene2d/src/pxResource.cpp:453
 #2  0x00000000004fed9a in pxResource::onDownloadCompleteUI (context=0x613000025500, data=0x7d8840) at pxCore/examples/pxScene2d/src/pxResource.cpp:520
 #3  0x0000000000655908 in rtThreadQueue::process (this=0x60c000000100, maxSeconds=0.01) at pxCore/src/rtThreadQueue.cpp:77
 #4  0x0000000000591567 in pxScene2d::onUpdate (this=0x614000066a40, t=113939.38154799999) at pxCore/examples/pxScene2d/src/pxScene2d.cpp:2529
 #5  0x00000000005c3e4b in pxScriptView::onUpdate (this=0x610000047140, t=113939.38154799999) at pxCore/examples/pxScene2d/src/pxScene2d.h:1272
 #6  0x000000000063a1c5 in sceneWindow::onAnimationTimer (this=0xadeb00 <win>) at pxCore/examples/pxScene2d/src/pxScene.cpp:387
 #7  0x0000000000647fb8 in pxWindowNative::onAnimationTimerInternal (this=0xadeb00 <win>) at pxCore/src/wayland_egl/pxWindowNative.cpp:496
 #8  0x000000000064a098 in pxWindowNative::animateAndRender (this=0xadeb00 <win>) at pxCore/src/wayland_egl/pxWindowNative.cpp:863
 #9  0x0000000000648cce in pxWindowNative::runEventLoop () at pxCore/src/wayland_egl/pxWindowNative.cpp:602
 #10 0x0000000000652206 in pxEventLoop::run (this=0xade9a0 <eventLoop>) at pxCore/src/wayland_egl/pxEventLoopNative.cpp:35
 #11 0x0000000000637efd in pxMain (argc=3, argv=0x7ffc55df3538) at pxCore/examples/pxScene2d/src/pxScene.cpp:679
 #12 0x0000000000652284 in main (argc=3, argv=0x7ffc55df3538) at pxCore/src/wayland_egl/pxEventLoopNative.cpp:50
 (gdb) frame 0
 #0  0x00000000004fde20 in rtImageResource::getTexture (this=0x613000025500, initializing=true) at pxCore/examples/pxScene2d/src/pxResource.cpp:399
 (gdb) p mTexture
 $1 = {_vptr.rtRef = 0xa99740 <vtable for rtRef<pxTexture>+16>, mRef = 0x0}
 (gdb)
dwrobel pushed a commit that referenced this pull request Jul 6, 2018
This reverts commit f54a4fd.

Causes the following regression:

wayland backend:
==25290==ERROR: AddressSanitizer: SEGV on unknown address 0x000000000000 (pc 0x0000004fde20 bp 0x7ffc1cf21870 sp 0x7ffc1cf21830 T0)
==25290==The signal is caused by a READ memory access.
==25290==Hint: address points to the zero page.
    #0 0x4fde1f in rtImageResource::getTexture(bool) pxCore/examples/pxScene2d/src/pxResource.cpp:399
    #1 0x4fe435 in rtImageResource::setupResource() pxCore/examples/pxScene2d/src/pxResource.cpp:453
    #2 0x4fed99 in pxResource::onDownloadCompleteUI(void*, void*) pxCore/examples/pxScene2d/src/pxResource.cpp:520
    #3 0x655907 in rtThreadQueue::process(double) pxCore/src/rtThreadQueue.cpp:77
    #4 0x591566 in pxScene2d::onUpdate(double) pxCore/examples/pxScene2d/src/pxScene2d.cpp:2529
    #5 0x5c3e4a in pxScriptView::onUpdate(double) (pxCore/examples/pxScene2d/src/pxscene+0x5c3e4a)
    #6 0x63a1c4 in sceneWindow::onAnimationTimer() pxCore/examples/pxScene2d/src/pxScene.cpp:387
    #7 0x647fb7 in pxWindowNative::onAnimationTimerInternal() pxCore/src/wayland_egl/pxWindowNative.cpp:496
    #8 0x64a097 in pxWindowNative::animateAndRender() pxCore/src/wayland_egl/pxWindowNative.cpp:863
    #9 0x648ccd in pxWindowNative::runEventLoop() pxCore/src/wayland_egl/pxWindowNative.cpp:602
    #10 0x652205 in pxEventLoop::run() pxCore/src/wayland_egl/pxEventLoopNative.cpp:35
    #11 0x637efc in pxMain(int, char**) pxCore/examples/pxScene2d/src/pxScene.cpp:679
    #12 0x652283 in main pxCore/src/wayland_egl/pxEventLoopNative.cpp:50
    #13 0x7f6887c7d18a in __libc_start_main ../csu/libc-start.c:308
    #14 0x4fac49 in _start (pxCore/examples/pxScene2d/src/pxscene+0x4fac49)

AddressSanitizer can not provide additional info.
SUMMARY: AddressSanitizer: SEGV pxCore/examples/pxScene2d/src/pxResource.cpp:399 in rtImageResource::getTexture(bool)
==25290==ABORTING

glut backend:

 #0  0x00000000004fde20 in rtImageResource::getTexture (this=0x613000025500, initializing=true) at pxCore/examples/pxScene2d/src/pxResource.cpp:399
 #1  0x00000000004fe436 in rtImageResource::setupResource (this=0x613000025500) at pxCore/examples/pxScene2d/src/pxResource.cpp:453
 #2  0x00000000004fed9a in pxResource::onDownloadCompleteUI (context=0x613000025500, data=0x7d8840) at pxCore/examples/pxScene2d/src/pxResource.cpp:520
 #3  0x0000000000655908 in rtThreadQueue::process (this=0x60c000000100, maxSeconds=0.01) at pxCore/src/rtThreadQueue.cpp:77
 #4  0x0000000000591567 in pxScene2d::onUpdate (this=0x614000066a40, t=113939.38154799999) at pxCore/examples/pxScene2d/src/pxScene2d.cpp:2529
 #5  0x00000000005c3e4b in pxScriptView::onUpdate (this=0x610000047140, t=113939.38154799999) at pxCore/examples/pxScene2d/src/pxScene2d.h:1272
 #6  0x000000000063a1c5 in sceneWindow::onAnimationTimer (this=0xadeb00 <win>) at pxCore/examples/pxScene2d/src/pxScene.cpp:387
 #7  0x0000000000647fb8 in pxWindowNative::onAnimationTimerInternal (this=0xadeb00 <win>) at pxCore/src/wayland_egl/pxWindowNative.cpp:496
 #8  0x000000000064a098 in pxWindowNative::animateAndRender (this=0xadeb00 <win>) at pxCore/src/wayland_egl/pxWindowNative.cpp:863
 #9  0x0000000000648cce in pxWindowNative::runEventLoop () at pxCore/src/wayland_egl/pxWindowNative.cpp:602
 #10 0x0000000000652206 in pxEventLoop::run (this=0xade9a0 <eventLoop>) at pxCore/src/wayland_egl/pxEventLoopNative.cpp:35
 #11 0x0000000000637efd in pxMain (argc=3, argv=0x7ffc55df3538) at pxCore/examples/pxScene2d/src/pxScene.cpp:679
 #12 0x0000000000652284 in main (argc=3, argv=0x7ffc55df3538) at pxCore/src/wayland_egl/pxEventLoopNative.cpp:50
 (gdb) frame 0
 #0  0x00000000004fde20 in rtImageResource::getTexture (this=0x613000025500, initializing=true) at pxCore/examples/pxScene2d/src/pxResource.cpp:399
 (gdb) p mTexture
 $1 = {_vptr.rtRef = 0xa99740 <vtable for rtRef<pxTexture>+16>, mRef = 0x0}
 (gdb)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant