Author: sandervanderburg
Date: Thu Feb 24 14:02:35 2011
New Revision: 26093
URL: https://svn.nixos.org/websvn/nix/?rev=26093&sc=1

Log:
Give some error messages in case of an invalid serviceProperty and 
targetProperty

Modified:
   disnix/dydisnix/trunk/src/divide/divide.c
   disnix/dydisnix/trunk/src/minsetcover/minsetcover.c

Modified: disnix/dydisnix/trunk/src/divide/divide.c
==============================================================================
--- disnix/dydisnix/trunk/src/divide/divide.c   Thu Feb 24 13:41:16 2011        
(r26092)
+++ disnix/dydisnix/trunk/src/divide/divide.c   Thu Feb 24 14:02:35 2011        
(r26093)
@@ -39,12 +39,21 @@
        {
            DistributionItem *item = g_array_index(candidate_target_array, 
DistributionItem*, i);
            Service *service = lookup_service(service_property_array, 
item->service);
-           ServiceProperty *service_prop = lookup_service_property(service, 
service_property);
-
+           ServiceProperty *service_prop = lookup_service_property(service, 
service_property);                             
+           
            GArray *targets = item->targets;
            unsigned int j;
        
-           DistributionItem *result_item = 
(DistributionItem*)g_malloc(sizeof(DistributionItem));
+           DistributionItem *result_item;
+           
+           if(service_prop == NULL)
+           {
+               g_printerr("Service property: %s not found!\n", 
service_property);
+               exit_status = 1;
+               break;
+           }
+           
+           result_item = (DistributionItem*)g_malloc(sizeof(DistributionItem));
            result_item->service = item->service;
            result_item->targets = g_array_new(FALSE, FALSE, sizeof(gchar*));
        
@@ -57,6 +66,13 @@
                gchar *target_name = g_array_index(targets, gchar*, j);
                Target *target = lookup_target(infrastructure_property_array, 
target_name);         
                InfrastructureProperty *infrastructure_prop = 
lookup_infrastructure_property(target, infrastructure_property);
+               
+               if(infrastructure_prop == NULL)
+               {
+                   g_printerr("Infrastructure property: %s not found!\n", 
infrastructure_property);
+                   exit_status = 1;
+                   break;
+               }
            
                if(strategy == STRATEGY_GREEDY)
                {

Modified: disnix/dydisnix/trunk/src/minsetcover/minsetcover.c
==============================================================================
--- disnix/dydisnix/trunk/src/minsetcover/minsetcover.c Thu Feb 24 13:41:16 
2011        (r26092)
+++ disnix/dydisnix/trunk/src/minsetcover/minsetcover.c Thu Feb 24 14:02:35 
2011        (r26093)
@@ -54,6 +54,13 @@
                double cost;
                unsigned int j;
            
+               if(infrastructure_prop == NULL)
+               {
+                   g_printerr("Infrastructure property: %s not found!\n", 
target_property);
+                   exit_status = 1;
+                   break;
+               }
+           
                for(j = 0; j < target_mapping->services->len; j++)
                {
                    gchar *service_name = 
g_array_index(target_mapping->services, gchar*, j);
_______________________________________________
nix-commits mailing list
[email protected]
http://mail.cs.uu.nl/mailman/listinfo/nix-commits

Reply via email to