summaryrefslogtreecommitdiff
path: root/src/video.c
blob: 9f29ed9cc98722217571698fb3cdbcb3a05bd5ba (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include "../include/video.h"

Video createVideo(char *title, char *author, char *id, char *duration)
{
	Video video;

	if (title != NULL && strlen(title) > 0)
	{
		video.title = (char *) calloc(TITLE + 1, sizeof(char));
		strcpy(video.title, title);
	}

	if (author != NULL && strlen(author) > 0)
	{
		video.author = (char *) calloc(AUTHOR + 1, sizeof(char));
		strcpy(video.author, author);
	}

	if (id != NULL && strlen(id) > 0)
	{
		video.id = (char *) calloc(VIDEOID + 1, sizeof(char));
		strcpy(video.id, id);
	}

	if (duration != NULL && strlen(duration) > 0)
	{
		video.duration = (char *) calloc(DURATION + 1, sizeof(char));
		strcpy(video.duration, duration);
	}
	else
	{
		video.duration = (char *) calloc(1, sizeof(char));
	}

	return video;
}

void freeVideo(Video *v)
{
	free(v->title);
	free(v->author);
	free(v->id);
	free(v->duration);
}