Why segmentation fault ?

int print_user(const User *user) {
    FILE *file_ptr = fopen(user->profile_pic, "r");
    char *profile_img_char= malloc(sizeof(char *));
    while(fread(profile_img_char, sizeof(char), 1, file_ptr) != 0) {
        printf("%s", profile_img_char);
    }
    fclose(file_ptr);
}