do i have memory leak?
/*
 * Change the filename for the profile pic of the given user.
 *
 * Return:
 *   - 0 on success.
 *   - 1 if the file does not exist or cannot be opened.
 *   - 2 if the filename is too long.
 */
int update_pic(User *user, const char *filename) {
	// check if the file name is too long
    if (strlen(filename) >= sizeof(user->profile_pic) - 1){
    	return 2;
    }

    // declare FILE variable like in PCRS prep (week 3)
    FILE *file;
    file = fopen(filename, "r");
    // check if failed to be opened
    if (file == NULL){
    	return 1;
    }

    // can use unsafe strcpy since the filename can fit
    // close the file that opened successfully
    strcpy(user->profile_pic, filename);
    fclose(file);
    return 0;
}