svn commit: samba r19824 - in branches/SAMBA_3_0/source/rpc_server: .

vlendec at samba.org vlendec at samba.org
Tue Nov 21 19:47:49 GMT 2006


Author: vlendec
Date: 2006-11-21 19:47:48 +0000 (Tue, 21 Nov 2006)
New Revision: 19824

WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=19824

Log:
Fix the max value calculation in QueryInfoKey
Modified:
   branches/SAMBA_3_0/source/rpc_server/srv_winreg_nt.c


Changeset:
Modified: branches/SAMBA_3_0/source/rpc_server/srv_winreg_nt.c
===================================================================
--- branches/SAMBA_3_0/source/rpc_server/srv_winreg_nt.c	2006-11-21 19:45:53 UTC (rev 19823)
+++ branches/SAMBA_3_0/source/rpc_server/srv_winreg_nt.c	2006-11-21 19:47:48 UTC (rev 19824)
@@ -163,7 +163,6 @@
                                     uint32 *maxlen, uint32 *maxsize )
 {
 	REGVAL_CTR 	*values;
-	REGISTRY_VALUE	*val;
 	uint32 		sizemax, lenmax;
 	int 		i, num_values;
 	
@@ -178,15 +177,17 @@
 	
 	lenmax = sizemax = 0;
 	num_values = regval_ctr_numvals( values );
-	
-	val = regval_ctr_specific_value( values, 0 );
-	
-	for ( i=0; i<num_values && val; i++ ) 
-	{
-		lenmax  = MAX(lenmax,  val->valuename ? strlen(val->valuename)+1 : 0 );
+
+	for ( i=0; i<num_values; i++ ) {
+		REGISTRY_VALUE *val;
+
+		if (!(val = regval_ctr_specific_value( values, i ))) {
+			break;
+		}
+
+		lenmax  = MAX(lenmax, val->valuename ?
+			      strlen(val->valuename)+1 : 0 );
 		sizemax = MAX(sizemax, val->size );
-		
-		val = regval_ctr_specific_value( values, i );
 	}
 
 	*maxnum   = num_values;



More information about the samba-cvs mailing list