Subversion Repositories Kolibri OS

Rev

Go to most recent revision | Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
2349 Serge 1
 
2
#include 
3
#include 
4
#include 
5
#include 
6
#include 
7
#include "fplay.h"
8
9
 
10
11
 
12
{
13
    uint32_t tmp;
14
15
 
16
"0:\n\t"
17
    "mov %0, %1\n\t"
18
    "testl %1, %1\n\t"
19
    "jz 1f\n\t"
20
21
 
22
    "movl $1,  %%ebx\n\t"
23
    "int  $0x40\n\t"
24
    "jmp 0b\n\t"
25
"1:\n\t"
26
    "incl %1\n\t"
27
    "xchgl %0, %1\n\t"
28
    "testl %1, %1\n\t"
29
    "jnz 0b\n"
30
    : "+m" (*val), "=&r"(tmp)
31
    ::"eax","ebx" );
32
}
33
34
 
35
 
36
{
37
    int off = offset;
38
    return lseek(fd, off, origin);
39
}
40
41
 
42
 
43
{
44
    AVPacketList *q_pkt;
45
46
 
47
    if (av_dup_packet(pkt) < 0)
48
        return -1;
49
50
 
51
    if (!q_pkt)
52
        return -1;
53
54
 
55
    q_pkt->next = NULL;
56
57
 
58
59
 
60
        q->first_pkt = q_pkt;
61
    else
62
        q->last_pkt->next = q_pkt;
63
64
 
65
    q->size += q_pkt->pkt.size + sizeof(*q_pkt);
66
    q->count++;
67
68
 
69
70
 
71
}
72
73
 
74
{
75
    AVPacketList *q_pkt;
76
    int ret = 0;
77
78
 
79
80
 
81
    if (q_pkt)
82
    {
83
        q->first_pkt = q_pkt->next;
84
        if (!q->first_pkt)
85
            q->last_pkt = NULL;
86
87
 
88
        q->size -= q_pkt->pkt.size + sizeof(*q_pkt);
89
        *pkt = q_pkt->pkt;
90
        av_free(q_pkt);
91
        ret = 1;
92
    };
93
94
 
95
96
 
97
}
98