libavcodec has codes like this one (utils.c): static AVPacket *add_to_pktbuf(AVPacketList **packet_buffer, AVPacket *pkt, AVPacketList **plast_pktl) { AVPacketList *pktl = av_mallocz(sizeof(AVPacketList)); if (!pktl) return NULL;
if (*packet_buffer) (*plast_pktl)->next = pktl; else *packet_buffer = pktl; /* Add the packet in the buffered packet list. */ *plast_pktl = pktl; pktl->pkt = *pkt; <=========================== return &pktl->pkt; } Here a struct variable is meant to be copied over via assignment, is that 100% correct to always work the way was intended? Given that the struct pkt is a big struct which has raw bytes that are malloc'd. I was always trained to avoid such struct assignment operations. What do people think? Ratin _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel