mirror of
https://github.com/xcat2/xNBA.git
synced 2024-12-14 23:31:39 +00:00
Keep HTTP progress updated, and display a progress indicator during the
download
This commit is contained in:
parent
1a79437888
commit
bde8878eef
@ -170,6 +170,7 @@ static void download_reap ( struct async *async ) {
|
||||
static struct async_operations download_async_operations = {
|
||||
.reap = download_reap,
|
||||
.signal = {
|
||||
[SIGCHLD] = download_sigchld,
|
||||
[SIGCHLD] = download_sigchld,
|
||||
[SIGUPDATE] = SIG_IGN,
|
||||
},
|
||||
};
|
||||
|
@ -253,6 +253,10 @@ static void http_rx_data ( struct http_request *http,
|
||||
return;
|
||||
}
|
||||
|
||||
/* Update progress */
|
||||
http->async.completed = http->buffer->fill;
|
||||
http->async.total = http->content_length;
|
||||
|
||||
/* If we have reached the content-length, stop now */
|
||||
if ( http->content_length &&
|
||||
( http->buffer->fill >= http->content_length ) ) {
|
||||
|
@ -56,9 +56,10 @@ int imgfetch ( const char *uri_string, const char *name,
|
||||
strncpy ( image->name, name, ( sizeof ( image->name ) - 1 ) );
|
||||
|
||||
/* Download the file */
|
||||
if ( ( rc = async_block ( &async, start_download ( uri_string, &async,
|
||||
&image->data,
|
||||
&image->len ))) !=0)
|
||||
if ( ( rc = async_block_progress ( &async,
|
||||
start_download ( uri_string, &async,
|
||||
&image->data,
|
||||
&image->len )))!=0)
|
||||
goto err;
|
||||
|
||||
/* Register the image */
|
||||
|
Loading…
Reference in New Issue
Block a user