This seems like it should be trival but it isn't working for me. Relevant code snippets:
char * outfn; //apr_palloced later > ... > while ((b = APR_BRIGADE_FIRST(bb)) != APR_BRIGADE_SENTINEL(bb)) { > bytes=0; > if(APR_BUCKET_IS_FILE(b)){ //we should handle file buckets > specially > rv = apr_file_name_get((const char > **)&outfn,((apr_bucket_file *)b)->fd); > if (rv != APR_SUCCESS){ > //failed > .... > }else{ > //success > .... > } > }else{ > rv = apr_bucket_read(b, &buf, &bytes, APR_BLOCK_READ); > } > ... > } > If I am passed a file bucket, I don't need to read the bucket because the only reason I'm reading the bucket is to write it to a file anyways so I just want to switch my outfn from the temporary file I created to the file buckets filename. I use apr_file_name_get() to get the file name but it's just returning junk (with APR_SUCCESS return value). Outputting the resulting file yields "Switching outfn to '0��!���!'" What am I doing wrong? Thanks, Jason