libgit2-rs: Update for 2nd edition.

pull/13/head
Jim Blandy 3 years ago
parent 20283f8a98
commit cd2e8fd8ab

@ -2,6 +2,6 @@
name = "libgit2-rs" name = "libgit2-rs"
version = "0.1.0" version = "0.1.0"
authors = ["You <you@example.com>"] authors = ["You <you@example.com>"]
build = "build.rs" edition = "2018"
[dependencies] [dependencies]

@ -1,3 +1,3 @@
fn main() { fn main() {
println!("cargo:rustc-link-search=native=/home/jimb/libgit2-0.25.1/build"); println!(r"cargo:rustc-link-search=native=/home/jimb/libgit2-0.25.1/build");
} }

@ -1,3 +1,6 @@
#![warn(rust_2018_idioms)]
#![allow(elided_lifetimes_in_paths)]
mod raw; mod raw;
use std::ffi::CStr; use std::ffi::CStr;
@ -48,9 +51,12 @@ fn main() {
raw::git_repository_open(&mut repo, path.as_ptr())); raw::git_repository_open(&mut repo, path.as_ptr()));
let c_name = b"HEAD\0".as_ptr() as *const c_char; let c_name = b"HEAD\0".as_ptr() as *const c_char;
let mut oid = mem::uninitialized(); let oid = {
check("looking up HEAD", let mut oid = mem::MaybeUninit::uninit();
raw::git_reference_name_to_id(&mut oid, repo, c_name)); check("looking up HEAD",
raw::git_reference_name_to_id(oid.as_mut_ptr(), repo, c_name));
oid.assume_init()
};
let mut commit = ptr::null_mut(); let mut commit = ptr::null_mut();
check("looking up commit", check("looking up commit",

@ -25,8 +25,8 @@ extern {
pub fn git_commit_free(commit: *mut git_commit); pub fn git_commit_free(commit: *mut git_commit);
} }
pub enum git_repository {} #[repr(C)] pub struct git_repository { _private: [u8; 0] }
pub enum git_commit {} #[repr(C)] pub struct git_commit { _private: [u8; 0] }
#[repr(C)] #[repr(C)]
pub struct git_error { pub struct git_error {
@ -34,9 +34,11 @@ pub struct git_error {
pub klass: c_int pub klass: c_int
} }
pub const GIT_OID_RAWSZ: usize = 20;
#[repr(C)] #[repr(C)]
pub struct git_oid { pub struct git_oid {
pub id: [c_uchar; 20] pub id: [c_uchar; GIT_OID_RAWSZ]
} }
pub type git_time_t = i64; pub type git_time_t = i64;

Loading…
Cancel
Save