스택 할당 sf :: Texture로 인해 "LeakSanitizer : 메모리 누수 감지"발생

사우 렌

LeakSanitizer에 따라 스택에 텍스처를 생성하면 메모리 누수가 발생합니다. 오 탐지입니까?

macOS Mojave에서 sfml 버전 2.5.1을 사용하고 있습니다.

main.cpp

#include <SFML/Graphics.hpp>

int main(int, char const**) {
    sf::Texture texture;
}

편집

clang++ -Wall -Weffc++ -Werror -pedantic -g -fsanitize=address -fno-omit-frame-pointer -lstdc++ -lsfml-graphics main.cpp

운영

➜  test_sfml_texture ASAN_OPTIONS=detect_leaks=1 ./a.out

=================================================================
==48054==ERROR: LeakSanitizer: detected memory leaks

Direct leak of 120 byte(s) in 1 object(s) allocated from:
    #0 0x1005b1287 in wrap_calloc (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x61287)
    #1 0x7fff7690e4eb in class_createInstance (libobjc.A.dylib:x86_64h+0x64eb)
    #2 0x7fff7809cef3 in _os_object_alloc_realized (libdispatch.dylib:x86_64+0x2ef3)
    #3 0x7fff780adb37 in dispatch_source_create (libdispatch.dylib:x86_64+0x13b37)
    #4 0x7fff780b81eb in _dispatch_kq_poll (libdispatch.dylib:x86_64+0x1e1eb)
    #5 0x7fff780b7d3a in _dispatch_kq_drain (libdispatch.dylib:x86_64+0x1dd3a)
    #6 0x7fff780b72b1 in _dispatch_kq_unote_update (libdispatch.dylib:x86_64+0x1d2b1)
    #7 0x7fff780ae720 in _dispatch_source_install (libdispatch.dylib:x86_64+0x14720)
    #8 0x7fff780ae67c in _dispatch_source_activate (libdispatch.dylib:x86_64+0x1467c)
    #9 0x7fff780a2b9a in _dispatch_lane_resume_activate (libdispatch.dylib:x86_64+0x8b9a)
    #10 0x7fff713176b8 in (anonymous namespace)::RunElsewhere::instance() (SkyLight:x86_64+0x1d6b8)
    #11 0x7fff71456f59 in __SLSInitialize_block_invoke (SkyLight:x86_64+0x15cf59)
    #12 0x7fff7809d63c in _dispatch_client_callout (libdispatch.dylib:x86_64+0x363c)
    #13 0x7fff7809ed4b in _dispatch_once_callout (libdispatch.dylib:x86_64+0x4d4b)
    #14 0x7fff7130802e in CGS_CHECK_INIT (SkyLight:x86_64+0xe02e)
    #15 0x7fff714ca6a0 in SLSMainDisplayID (SkyLight:x86_64+0x1d06a0)
    #16 0x101288126 in sf::priv::VideoModeImpl::getDesktopMode() (libsfml-window.2.5.dylib:x86_64+0x1a126)
    #17 0x101282409 in sf::priv::SFContext::SFContext(sf::priv::SFContext*) (libsfml-window.2.5.dylib:x86_64+0x14409)
    #18 0x101273932 in sf::priv::GlContext::initResource() (libsfml-window.2.5.dylib:x86_64+0x5932)
    #19 0x10050e482 in sf::Texture::Texture() (libsfml-graphics.2.5.dylib:x86_64+0x3e482)
    #20 0x1004cce70 in main main.cpp:4
    #21 0x7fff780ea3d4 in start (libdyld.dylib:x86_64+0x163d4)

체계

➜  test_sfml_texture  which clang
/usr/local/opt/llvm@8/bin/clang
➜  test_sfml_texture clang++ --version
clang version 8.0.1 (tags/RELEASE_801/final)
Target: x86_64-apple-darwin18.6.0
Thread model: posix
InstalledDir: /usr/local/opt/llvm@8/bin
루카스

이것은 공식 포럼 에 더 잘보고 될 것입니다. 대부분의 관리자는 그것이 실제 누출인지 거짓 양성인지 당신에게 말할 수 있기 때문입니다.

소스를 살펴보면 어떤 것이 유출되는지 실제로 볼 수 없으며 macOS 자체가 무언가를 유출하는 것처럼 보입니다. 내가 모호하게 생각할 수있는 유일한 것은 반환 된 값이 CGMainDisplayID다시 릴리스되어야한다는 것입니다.

참고 : 새로운 C ++ 표준, 특히 스마트 포인터를 사용하고 수동 메모리 관리를 피하는 경우 더 이상 발생하지 않는 경향이 있으므로 정기적으로 메모리 누수를 추적 할 필요가 거의 없습니다 (예 : 스마트 포인터가 소진되면 메모리가 자동으로 해제 됨). 범위).

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

C ++ 다중 스마트 포인터 할당으로 인해 충돌 발생

분류에서Dev

Vec로 인해 스택 오버플로가 발생할 수 있습니까?

분류에서Dev

2D 매트릭스의 문자 재 할당으로 인해 분할 오류가 발생합니다.

분류에서Dev

SSIS 2019 AutoAdjustBufferSize로 인해 버퍼 할당 오류 발생

분류에서Dev

개체 할당 딥 복사로 인해 문제 발생

분류에서Dev

3D 어레이 할당 해제로 인해 분할 오류 발생

분류에서Dev

연결된 목록 스택의 팝 기능으로 인해 분할 오류가 발생합니다.

분류에서Dev

잘못된 재 할당으로 인해 분할 오류가 발생합니까?

분류에서Dev

MailMessage "From"속성 할당으로 인해 간접적으로 예외 발생

분류에서Dev

CSV 분할로 인해 오류 발생

분류에서Dev

XCSourceEditorCommandInvocation 신속한 확장으로 인해 "인스턴스로 전송 된 인식 할 수없는 선택기"예외 발생

분류에서Dev

높은 메모리 할당으로 인해 메모리 부족 충돌 발생

분류에서Dev

Z- 색인으로 인해 잘못된 스택이 발생합니다.

분류에서Dev

인터페이스의 RTL 가독성에 대한 assign 문으로 인해 할당 또는 합성 버퍼가 발생합니다.

분류에서Dev

할당 된 메모리를 초과하는 포인터 액세스로 인해 segfault가 발생하지 않습니다.

분류에서Dev

Windows Forms Invoke로 인해 스택 오버플로가 발생합니까?

분류에서Dev

lodsb 명령어로 인해 스택 오버플로가 발생합니다.

분류에서Dev

lodsb 명령어로 인해 스택 오버플로가 발생합니다.

분류에서Dev

% rbp 레지스터없이 스택 프레임 할당 해제는 어떻게 발생합니까?

분류에서Dev

Lazarus / Delphi : 자체 할당 된 레코드 데이터 유형의 UnicodeString으로 인해 액세스 위반이 발생합니다.

분류에서Dev

Kotlin 데이터 클래스의 순환 참조로 인해 스택 오버플로 오류가 발생할 수 있음

분류에서Dev

Angular 7 Form Array 항목으로 인해 호출 스택 초과 오류 발생

분류에서Dev

원시 리소스 Uri로 인해 FileNotFoundException이 발생합니다 (해당 파일 또는 디렉터리 없음).

분류에서Dev

"/ bin // sh"를 스택으로 푸시하려고 할 때 32 비트 쉘 코드로 인해 세그먼트 화 오류 발생

분류에서Dev

무차별 대입 알고리즘으로 인해 스택 오버플로가 발생할 수 있습니까? (재귀)

분류에서Dev

Rust 스택 할당 이해

분류에서Dev

CIFilter에 대해 "인식 할 수없는 선택기가 클래스로 전송 됨"오류가 발생하는 이유는 무엇입니까?

분류에서Dev

동적 메모리 할당으로 인해 버프 오버플로가 발생하지 않습니까?

분류에서Dev

서비스중인 스레드로 인해 ANR 발생

Related 관련 기사

  1. 1

    C ++ 다중 스마트 포인터 할당으로 인해 충돌 발생

  2. 2

    Vec로 인해 스택 오버플로가 발생할 수 있습니까?

  3. 3

    2D 매트릭스의 문자 재 할당으로 인해 분할 오류가 발생합니다.

  4. 4

    SSIS 2019 AutoAdjustBufferSize로 인해 버퍼 할당 오류 발생

  5. 5

    개체 할당 딥 복사로 인해 문제 발생

  6. 6

    3D 어레이 할당 해제로 인해 분할 오류 발생

  7. 7

    연결된 목록 스택의 팝 기능으로 인해 분할 오류가 발생합니다.

  8. 8

    잘못된 재 할당으로 인해 분할 오류가 발생합니까?

  9. 9

    MailMessage "From"속성 할당으로 인해 간접적으로 예외 발생

  10. 10

    CSV 분할로 인해 오류 발생

  11. 11

    XCSourceEditorCommandInvocation 신속한 확장으로 인해 "인스턴스로 전송 된 인식 할 수없는 선택기"예외 발생

  12. 12

    높은 메모리 할당으로 인해 메모리 부족 충돌 발생

  13. 13

    Z- 색인으로 인해 잘못된 스택이 발생합니다.

  14. 14

    인터페이스의 RTL 가독성에 대한 assign 문으로 인해 할당 또는 합성 버퍼가 발생합니다.

  15. 15

    할당 된 메모리를 초과하는 포인터 액세스로 인해 segfault가 발생하지 않습니다.

  16. 16

    Windows Forms Invoke로 인해 스택 오버플로가 발생합니까?

  17. 17

    lodsb 명령어로 인해 스택 오버플로가 발생합니다.

  18. 18

    lodsb 명령어로 인해 스택 오버플로가 발생합니다.

  19. 19

    % rbp 레지스터없이 스택 프레임 할당 해제는 어떻게 발생합니까?

  20. 20

    Lazarus / Delphi : 자체 할당 된 레코드 데이터 유형의 UnicodeString으로 인해 액세스 위반이 발생합니다.

  21. 21

    Kotlin 데이터 클래스의 순환 참조로 인해 스택 오버플로 오류가 발생할 수 있음

  22. 22

    Angular 7 Form Array 항목으로 인해 호출 스택 초과 오류 발생

  23. 23

    원시 리소스 Uri로 인해 FileNotFoundException이 발생합니다 (해당 파일 또는 디렉터리 없음).

  24. 24

    "/ bin // sh"를 스택으로 푸시하려고 할 때 32 비트 쉘 코드로 인해 세그먼트 화 오류 발생

  25. 25

    무차별 대입 알고리즘으로 인해 스택 오버플로가 발생할 수 있습니까? (재귀)

  26. 26

    Rust 스택 할당 이해

  27. 27

    CIFilter에 대해 "인식 할 수없는 선택기가 클래스로 전송 됨"오류가 발생하는 이유는 무엇입니까?

  28. 28

    동적 메모리 할당으로 인해 버프 오버플로가 발생하지 않습니까?

  29. 29

    서비스중인 스레드로 인해 ANR 발생

뜨겁다태그

보관