Sorry for not being very clear. You're correct, pst_file is a struct with d_head being a pointer to another struct. Within libpst (the C library I'm working with), when you call pst_open() you pass pst_file by reference which opens the PST file (MS outlook file) and populates the pst_file struct. d_head is a pointer to another struct that holds individual records pulled out of the PST file. When the pst_open() call returns I need to take the d_head pointer, assign it to another pointer variable of type pst_desc_tree and use that to pass into another function.
pst_item *item = NULL; pst_desc_tree *d_ptr; pst_open(&pstfile, file_name, NULL); d_ptr = pstfile.d_head; // first record is main record item = pst_parse_item(&pstfile, d_ptr, NULL); The way I did it which seems to work is: var f = new pst_file(); //the main pst_file struct var pstdesctree_Ptr = ref.refType(pst_desc_tree); var d_ptr = ref.alloc(pstdesctree_Ptr); ref.writePointer(d_ptr, 0, f.d_head); This seems to copy the correct pointer, however when I do: ref.deref(d_ptr) I get a segmentation fault. How would I get access to the variables stored in that struct inside node? Here is my code: https://github.com/rhasson/node-libpst I didn't finish converting all the structs yet but give you an idea of what the code looks like. In the SRC directory I included the .c and .h files so you can see the structures. Thanks, Roy On Thursday, August 23, 2012 1:15:15 PM UTC-4, Nathan Rajlich wrote: > > > In C I do this: > > typedef struct pst_file { > > pst_desc_tree *d_head > > } pst_file; > > > > pst_desc_tree *d_ptr; //this is another struct > > d_ptr = pstfile.d_head; > > It's a pointer to a struct actually. I think you need to explain more > what you intend to do with the variable after. Are you trying to make > a duplicate of the struct? It seems to me that what you have above > would be achieved with "pstfile.d_head.slice(0)" but I can't really > imagine what you would need that for. > -- Job Board: http://jobs.nodejs.org/ Posting guidelines: https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines You received this message because you are subscribed to the Google Groups "nodejs" group. To post to this group, send email to nodejs@googlegroups.com To unsubscribe from this group, send email to nodejs+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/nodejs?hl=en?hl=en