- allocate target_type_t structure for each target, fixes issue when multiple targets...
authorntfreak <ntfreak@b42882b7-edfa-0310-969c-e2dbd0fdcd60>
Wed, 2 Jul 2008 07:51:41 +0000 (07:51 +0000)
committerntfreak <ntfreak@b42882b7-edfa-0310-969c-e2dbd0fdcd60>
Wed, 2 Jul 2008 07:51:41 +0000 (07:51 +0000)
- Thanks Michel Pollet

git-svn-id: svn://svn.berlios.de/openocd/trunk@738 b42882b7-edfa-0310-969c-e2dbd0fdcd60

src/target/target.c

index 1be4885d031c6c9ec9433e53f3fd125cb20bca79..0237fd669b4d6181c223ff3daf983ab5a619049c 100644 (file)
@@ -1403,7 +1403,9 @@ int handle_target_command(struct command_context_s *cmd_ctx, char *cmd, char **a
 
                                *last_target_p = malloc(sizeof(target_t));
                                
-                               (*last_target_p)->type = target_types[i];
+                               /* allocate memory for each unique target type */
+                               (*last_target_p)->type = (target_type_t*)malloc(sizeof(target_type_t));
+                               *((*last_target_p)->type) = *target_types[i]; 
                                
                                if (strcmp(args[1], "big") == 0)
                                        (*last_target_p)->endianness = TARGET_BIG_ENDIAN;