diff options
author | Ezequiel Garcia <elezegarcia@gmail.com> | 2012-10-23 14:57:19 -0400 |
---|---|---|
committer | Mauro Carvalho Chehab <mchehab@redhat.com> | 2012-12-27 16:01:51 -0500 |
commit | b52377475ae9dca21bcb1ae8ec0936fbae8595b2 (patch) | |
tree | d6f950c5723d779ab3cdc7444739115de7233ebf /drivers/media/pci/cx88 | |
parent | 01a5cbebce7bca910f50dff19b05177c2c8a8a76 (diff) |
[media] cx88: Replace memcpy with struct assignment
This kind of memcpy() is error-prone. Its replacement with a struct
assignment is prefered because it's type-safe and much easier to read.
Found by coccinelle. Hand patched and reviewed.
Tested by compilation only.
A simplified version of the semantic match that finds this problem is as
follows: (http://coccinelle.lip6.fr/)
// <smpl>
@@
identifier struct_name;
struct struct_name to;
struct struct_name from;
expression E;
@@
-memcpy(&(to), &(from), E);
+to = from;
// </smpl>
Signed-off-by: Peter Senna Tschudin <peter.senna@gmail.com>
Signed-off-by: Ezequiel Garcia <elezegarcia@gmail.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Diffstat (limited to 'drivers/media/pci/cx88')
-rw-r--r-- | drivers/media/pci/cx88/cx88-cards.c | 2 | ||||
-rw-r--r-- | drivers/media/pci/cx88/cx88-i2c.c | 3 | ||||
-rw-r--r-- | drivers/media/pci/cx88/cx88-vp3054-i2c.c | 3 |
3 files changed, 3 insertions, 5 deletions
diff --git a/drivers/media/pci/cx88/cx88-cards.c b/drivers/media/pci/cx88/cx88-cards.c index 0c255248cbcd..e2e0b8faf7a4 100644 --- a/drivers/media/pci/cx88/cx88-cards.c +++ b/drivers/media/pci/cx88/cx88-cards.c | |||
@@ -3743,7 +3743,7 @@ struct cx88_core *cx88_core_create(struct pci_dev *pci, int nr) | |||
3743 | cx88_card_list(core, pci); | 3743 | cx88_card_list(core, pci); |
3744 | } | 3744 | } |
3745 | 3745 | ||
3746 | memcpy(&core->board, &cx88_boards[core->boardnr], sizeof(core->board)); | 3746 | core->board = cx88_boards[core->boardnr]; |
3747 | 3747 | ||
3748 | if (!core->board.num_frontends && (core->board.mpeg & CX88_MPEG_DVB)) | 3748 | if (!core->board.num_frontends && (core->board.mpeg & CX88_MPEG_DVB)) |
3749 | core->board.num_frontends = 1; | 3749 | core->board.num_frontends = 1; |
diff --git a/drivers/media/pci/cx88/cx88-i2c.c b/drivers/media/pci/cx88/cx88-i2c.c index de0f1af74e41..cf2d69615838 100644 --- a/drivers/media/pci/cx88/cx88-i2c.c +++ b/drivers/media/pci/cx88/cx88-i2c.c | |||
@@ -139,8 +139,7 @@ int cx88_i2c_init(struct cx88_core *core, struct pci_dev *pci) | |||
139 | if (i2c_udelay<5) | 139 | if (i2c_udelay<5) |
140 | i2c_udelay=5; | 140 | i2c_udelay=5; |
141 | 141 | ||
142 | memcpy(&core->i2c_algo, &cx8800_i2c_algo_template, | 142 | core->i2c_algo = cx8800_i2c_algo_template; |
143 | sizeof(core->i2c_algo)); | ||
144 | 143 | ||
145 | 144 | ||
146 | core->i2c_adap.dev.parent = &pci->dev; | 145 | core->i2c_adap.dev.parent = &pci->dev; |
diff --git a/drivers/media/pci/cx88/cx88-vp3054-i2c.c b/drivers/media/pci/cx88/cx88-vp3054-i2c.c index d77f8ecab9d7..deede6e25d94 100644 --- a/drivers/media/pci/cx88/cx88-vp3054-i2c.c +++ b/drivers/media/pci/cx88/cx88-vp3054-i2c.c | |||
@@ -118,8 +118,7 @@ int vp3054_i2c_probe(struct cx8802_dev *dev) | |||
118 | return -ENOMEM; | 118 | return -ENOMEM; |
119 | dev->vp3054 = vp3054_i2c; | 119 | dev->vp3054 = vp3054_i2c; |
120 | 120 | ||
121 | memcpy(&vp3054_i2c->algo, &vp3054_i2c_algo_template, | 121 | vp3054_i2c->algo = vp3054_i2c_algo_template; |
122 | sizeof(vp3054_i2c->algo)); | ||
123 | 122 | ||
124 | vp3054_i2c->adap.dev.parent = &dev->pci->dev; | 123 | vp3054_i2c->adap.dev.parent = &dev->pci->dev; |
125 | strlcpy(vp3054_i2c->adap.name, core->name, | 124 | strlcpy(vp3054_i2c->adap.name, core->name, |