From 836172f749f188d8102e8f72923024c4bba1fe54 Mon Sep 17 00:00:00 2001 From: Edouard DUPIN Date: Wed, 14 May 2014 21:14:36 +0200 Subject: [PATCH] [DEBUG] remove segfault when set /.. path --- external/etk | 2 +- sources/ewol/widget/ListFileSystem.cpp | 27 +++++++++++++++++++------- 2 files changed, 21 insertions(+), 8 deletions(-) diff --git a/external/etk b/external/etk index 6bec5ddc..2059e5f0 160000 --- a/external/etk +++ b/external/etk @@ -1 +1 @@ -Subproject commit 6bec5ddccb307d3b42b253c37ceb3dc7afced304 +Subproject commit 2059e5f06a95cb4aa02ef084b6f134f7d3ad000b diff --git a/sources/ewol/widget/ListFileSystem.cpp b/sources/ewol/widget/ListFileSystem.cpp index faa75747..e93f8254 100644 --- a/sources/ewol/widget/ListFileSystem.cpp +++ b/sources/ewol/widget/ListFileSystem.cpp @@ -137,19 +137,28 @@ bool ewol::widget::ListFileSystem::getTitle(int32_t _colomn, std::string &_myTit uint32_t ewol::widget::ListFileSystem::getNuberOfRaw(void) { int32_t offset = 0; - if (true == m_showFolder) { - offset = 2; + if (m_showFolder == true) { + if (m_folder == "/") { + offset = 1; + } else { + offset = 2; + } } return m_list.size() + offset; } bool ewol::widget::ListFileSystem::getElement(int32_t _colomn, int32_t _raw, std::string& _myTextToWrite, etk::Color<>& _fg, etk::Color<>& _bg) { int32_t offset = 0; - if (true == m_showFolder) { - offset = 2; + if (m_showFolder == true) { + if (m_folder == "/") { + offset = 1; + } else { + offset = 2; + } if (_raw == 0) { _myTextToWrite = "."; - } else if (_raw == 1) { + } else if ( _raw == 1 + && m_folder != "/") { _myTextToWrite = ".."; } } @@ -179,8 +188,12 @@ bool ewol::widget::ListFileSystem::onItemEvent(int32_t _IdInput, float _x, float _y) { int32_t offset = 0; - if (true == m_showFolder) { - offset = 2; + if (m_showFolder == true) { + if (m_folder == "/") { + offset = 1; + } else { + offset = 2; + } } if (_typeEvent == ewol::key::statusSingle) { EWOL_DEBUG("Event on List : IdInput=" << _IdInput << " colomn=" << _colomn << " raw=" << _raw );