프로젝트

일반

사용자정보

결함 #13949

[통합결재] BOSS 반송 시 앱 크래시 발생 건(iOS)

박수민이(가) 5일 전에 추가함. 4일 전에 수정됨.

상태:
해결
우선순위:
보통
담당자:
시작시간:
2025-09-30
완료기한:
진척도:

90%

추정시간:
버전:
앱버전:
디바이스:
MO_APP_iOS
요청자:
OS버전:
심각도:
치명적 결함(Critical)

설명

[문제점]
: 통합결재(개발) 앱 > BOSS > 미결함 > 문서 상세화면 > (우측 상단) 결재선 화면 진입 후 back > 반송 클릭 > 반송 클릭 > 반송의견 입력 후 반송 클릭 시 앱 크래시 발생. (iOS)

[개선점]
: AOS와 동일하게, 반송 정상 진행. 앱이 크래시 되면 안됨.

[테스트 계정]
: yong79 / 추가 테스트 데이터 필요 시 요청바랍니다.

이력

#2 조정후이(가) 5일 전에 변경

  • 상태을(를) 신규에서 진행(으)로 변경되었습니다.

3회 시도 시 재현 되지 않음. 데이터 채워지면 재현 예정.

#3 조정후이(가) 5일 전에 변경

  • 상태을(를) 진행에서 해결(으)로 변경되었습니다.
  • 진척도을(를) 0에서 100(으)로 변경되었습니다.
  1. 테스트 진행
    개발에서 7회 동일 상황 테스트 진행. BOSS > 미결함 > 상세 > 결재선 버튼 선택 > 결재선 화면에서 우측 스와이프 > 상세화면에서 반송 > 반송의견 입력후 반송
    재현안됨.

  2. 크래쉬로그 분석
    DetailViewController.swift - 593번째 줄
    DetailViewController.hasNextApproval(lastId:) + 593

비정상 종료: com.apple.main-thread
EXC_BREAKPOINT 0x0000000100b996c4

해당 코드는 아래와 같습니다.

    guard let contentIndex = contents.firstIndex(where: { $0.id == lastId }) else {
        return false
    }
    var temp : [Content] = self.tempContents
    temp.remove(at: contentIndex) <= 찾은 index 기반으로 삭제 시도 시 문제 발생
    self.tempContents = temp

삭제시 index 기반이 아닌 id 기반으로 안전하게 지워지도록 변경합니다.

    self.tempContents.removeAll { $0.id == lastId }

추후 self.tempContents가 갱신이 안되는 근본적인 상황에 대해 관찰해 볼 필요가 있습니다.

#4 조정후이(가) 4일 전에 변경

  • 담당자을(를) 조정후에서 정인명(으)로 변경되었습니다.

#5 박수민이(가) 4일 전에 변경

  • 담당자을(를) 정인명에서 박수민(으)로 변경되었습니다.
  • 진척도을(를) 100에서 90(으)로 변경되었습니다.

바이너리 전달받은 이후 확인하겠습니다.

내보내기 Atom PDF