본문 바로가기

삽질

IF문 주의합시다. ㅠㅠ


Me2PocketUploader 윈도우즈 모바일 버전을 개발하면서 마블(이전은 인텔)의 PXA시리즈 CPU에서는 잘 동작하는 기능이 퀄컴의 MSM시리즈(MSM7200)칩에서는 의도하지 않은 동작을 하였습니다. 어차피 둘다 태생은 ARM 아키텍처 이지만 말입니다. 그것도 무적전설님이 알려주기 전까지는 몰랐습니다.
문제의 코드는 다음과 같습니다.
		// 댓글 닫기
		if(setCloseComment) {
			m_HTTP->AddGetData("close_comment", "true");
		}

 

setCloseCommnet 값이 BOOL값이라 BOOL값은 또 int로 정의되어 있기에 저렇게 작성했었는데, 퀄컴의 MSM CPU에서는 계속 댓글이 닫히는 문제가 생기는 것입니다. setCloseCommnet값이 FALSE라도 실행이 되어버렸던 것이지요. 전 이문제를 단순히 CPU의 아키텍처가 틀려서 라고 생각을 하고 있다가, 다음과 같이 명확하게 TRUE값을 검사했습니다.

		// 댓글 닫기
		if(setCloseComment == TRUE) {
			m_HTTP->AddGetData("close_comment", "true");
		}

 

잘 되는군요... 문제는 역시 저의 코딩 버릇이었습니다. 좀더 명확한 코드를 작성하도록 노력해야겠습니다.!! 테스트 해주신 무적전설님 감사합니다.