svn_client_checkout3 аварийно завершает работу с EXC_BAD_ACCESS - PullRequest
2 голосов
/ 14 ноября 2011

Я хочу получить рабочую копию:

apr_pool_t *pool = NULL;
apr_pool_create(&pool, NULL);
svn_client_ctx_t *context = NULL;
svn_client_create_context(&context, pool);
svn_opt_revision_t revision;
revision.kind = svn_opt_revision_head;
svn_client_checkout3(NULL,
                     repo.URL.absoluteString.UTF8String, // repo URL
                     localURL.path.UTF8String, // local path
                     &revision,
                     &revision,
                     svn_depth_infinity,
                     TRUE,
                     FALSE,
                     context,
                     pool);
apr_pool_destroy(pool);

Сбой при svn_client_checkout3 с EXC_BAD_ACCESS (возможно, ошибка сегментации).Я читаю документацию, но не могу понять, что я делаю неправильно.

Что может быть причиной этой ошибки?

1 Ответ

2 голосов
/ 16 ноября 2011

Я предполагаю, что вы инициализировали APR, svn_utf, svn_fs, svn_ra и т. Д. Перед этим фрагментом кода?

В репозитории Subversion есть несколько примеров кода, которые показывают, как вы должны выполнить инициализацию и позаботиться о ответных вызовах для таких вещей, как авторизация.

Если вы хотите избежать всего этого, я бы порекомендовал взглянуть на некоторые привязки более высокого уровня, существующие для Python (часть Subversion), Java (JavaHL и SvnKit) и .Net ( SharpSvn ) , Или, если вы просто хотите выполнить одну команду, вы можете просто раскошелиться на svn.

...