transmission-qt를 맥에서 어찌어찌 빌드를 해서 써보는데 모양이 이쁘게 안 빠지는 건 둘째 치고 세션 정보나 설정 상태가 유지되지 않아서 이 상태로는 쓰기가 좀 그렇다. 코드를 뒤적거리면 뭐가 좀 나올까? 10.08.11 04:15
transmission qt mac osx xcode session config preference
16 개의 댓글이 있습니다.
업·다운 숫자 계산이 이상하다. 기본적으로 상당히 크고 음수도 잡히는 걸 보면 나눗셈이 덜 된 건가?
버튼을 누르면 전체, 활성, 다운, 시딩, 중지 상태가 바뀌는 걸 선택메뉴로 해놨다. 두 번 클릭을 해야 하서 상당히 불편.
세션 접속이랑 정렬 등 설정 정보가 유지되어야 한다. 디렉토리 구조 같은 걸 잘못 잡아서 저장을 못 하는 게 아닐까 의심.
실행 때 dbus에 등록하는 절차가 있는데 이게 맥에서도 유효한 건가?
설정이 저장되지 않아서 매번 최초 실행에만 나와야 하는 알림창이 계속 뜬다. 종료시에 파일 저장 관련 경고가 뜬다.
일단 설정파일 경로는 잘 조합하는데, 실제 디렉토리를 만들지 못하는 것 같아서 디렉토리까지만 만들어줬더니 파일을 생성했음. 근데 종료할 때 한참 반응이 없다가 닫혔다. 다시 시작하면 세션 자동접속까지 한다.
그리고 무엇보다, 실행중일 때는 앱 아이콘이 뜨지만 안 떴을 때는 아이콘이 없다. 이건 간단한 설정 문제일 거 같기는 한데...
디렉토리 못 만드는 건, gtk 버전을 보니 초기화 때 호출되는 cf_init()이란 데서 gtr_mkdir_with_parents()라는 게 있는데 이게 glib을 쓰거나 tr_mkdirp()를 호출한다. 그럼 qt도 똑같이 호출하면 되겠는데 왜 없는 거지?
libtorrent 안에서는 tr_mkdirp()를 꽤 쓰는데 gtk는 glib이 없으면 쓰도록 래퍼를 만들어 쓰고, macosx는 tr_sessionInit()에서 처리하나?
gtk도 tr_sessionInit()을 쓰지만 이미 cf_init()를 호출해 mkdir를 처리한 다음.
macosx에서 onfigDir로 찾을 때 Controller.m에서만 3개가 나오고 둘이 get이다. 나머지가 tr_sessionInit이라서, 처리를 한다면 여기서 하는 것으로 짐작.
tr_sessionInitImpl()이 init 끝에서 호출되는데, 이게 tr_setConfigDir()로 세션에 설정 경로를 먹인다. 그 밑에서도 blocklists 파일 때문에 tr_mkdirp 호출.
이러고 보면 경로 생성이 여러 번의 과정 중에 처리되었어야 하는데 왜 직접 만들지 못해 만들어줄 때까지 버벅거린 것일까? qtr은 원격 세션도 가능해서 선택하기 전에는 세션 자체를 시작하지 않는 건가?
그렇군 -_-; Session::start()에서 원격이면 그냥 덜렁 접속만 할 뿐이고 직접 세션을 띄워야 sessionInit()이 걸린다. -_-;;;; 하긴 개발자 컴퓨터엔 다들 생성이 되어 있으니 초기 설치시의 문제를 알긴 힘들겠지;
https://trac.transmissionbt.com/ticket/3503
최신으로 빌드해보니 속도가 지나치게 높던 게 잡혔다.
업·다운 숫자 계산이 이상하다. 기본적으로 상당히 크고 음수도 잡히는 걸 보면 나눗셈이 덜 된 건가?
10.08.11 04:25버튼을 누르면 전체, 활성, 다운, 시딩, 중지 상태가 바뀌는 걸 선택메뉴로 해놨다. 두 번 클릭을 해야 하서 상당히 불편.
10.08.11 04:26세션 접속이랑 정렬 등 설정 정보가 유지되어야 한다. 디렉토리 구조 같은 걸 잘못 잡아서 저장을 못 하는 게 아닐까 의심.
10.08.11 04:27실행 때 dbus에 등록하는 절차가 있는데 이게 맥에서도 유효한 건가?
10.08.11 04:30설정이 저장되지 않아서 매번 최초 실행에만 나와야 하는 알림창이 계속 뜬다. 종료시에 파일 저장 관련 경고가 뜬다.
10.08.11 04:43일단 설정파일 경로는 잘 조합하는데, 실제 디렉토리를 만들지 못하는 것 같아서 디렉토리까지만 만들어줬더니 파일을 생성했음. 근데 종료할 때 한참 반응이 없다가 닫혔다. 다시 시작하면 세션 자동접속까지 한다.
10.08.11 04:45그리고 무엇보다, 실행중일 때는 앱 아이콘이 뜨지만 안 떴을 때는 아이콘이 없다. 이건 간단한 설정 문제일 거 같기는 한데...
10.08.11 04:48디렉토리 못 만드는 건, gtk 버전을 보니 초기화 때 호출되는 cf_init()이란 데서 gtr_mkdir_with_parents()라는 게 있는데 이게 glib을 쓰거나 tr_mkdirp()를 호출한다. 그럼 qt도 똑같이 호출하면 되겠는데 왜 없는 거지?
10.08.11 14:15libtorrent 안에서는 tr_mkdirp()를 꽤 쓰는데 gtk는 glib이 없으면 쓰도록 래퍼를 만들어 쓰고, macosx는 tr_sessionInit()에서 처리하나?
10.08.11 14:25gtk도 tr_sessionInit()을 쓰지만 이미 cf_init()를 호출해 mkdir를 처리한 다음.
10.08.11 14:31macosx에서 onfigDir로 찾을 때 Controller.m에서만 3개가 나오고 둘이 get이다. 나머지가 tr_sessionInit이라서, 처리를 한다면 여기서 하는 것으로 짐작.
10.08.11 14:33tr_sessionInitImpl()이 init 끝에서 호출되는데, 이게 tr_setConfigDir()로 세션에 설정 경로를 먹인다. 그 밑에서도 blocklists 파일 때문에 tr_mkdirp 호출.
10.08.11 14:42이러고 보면 경로 생성이 여러 번의 과정 중에 처리되었어야 하는데 왜 직접 만들지 못해 만들어줄 때까지 버벅거린 것일까? qtr은 원격 세션도 가능해서 선택하기 전에는 세션 자체를 시작하지 않는 건가?
10.08.11 14:44그렇군 -_-; Session::start()에서 원격이면 그냥 덜렁 접속만 할 뿐이고 직접 세션을 띄워야 sessionInit()이 걸린다. -_-;;;; 하긴 개발자 컴퓨터엔 다들 생성이 되어 있으니 초기 설치시의 문제를 알긴 힘들겠지;
10.08.11 14:47https://trac.transmissionbt.com/ticket/3503
10.08.11 15:18최신으로 빌드해보니 속도가 지나치게 높던 게 잡혔다.
10.09.06 01:46