]> git.tuebingen.mpg.de Git - paraslash.git/blobdiff - aft.c
attribute: Avoid shifting 32 bit integers.
[paraslash.git] / aft.c
diff --git a/aft.c b/aft.c
index 7f9e786caf4f4a27a4cf549928ff1b5d5737c8d9..261054df8fc4012236b42246158b87b77ce1623c 100644 (file)
--- a/aft.c
+++ b/aft.c
@@ -1745,6 +1745,8 @@ static int com_add_callback(struct afs_callback_arg *aca)
        objs[AFTCOL_AFSI].size = AFSI_SIZE;
        save_afsi(&default_afsi, &objs[AFTCOL_AFSI]);
        ret = osl(osl_add_and_get_row(audio_file_table, objs, &aft_row));
+       if (ret < 0)
+               goto out;
        ret = afs_event(AUDIO_FILE_ADD, &aca->pbout, aft_row);
 out:
        if (ret < 0)
@@ -2399,6 +2401,7 @@ static int com_setatt_callback(struct afs_callback_arg *aca)
        ) {
                char c;
                unsigned char bitnum;
+               uint64_t one = 1;
 
                len = strlen(p);
                ret = -E_ATTR_SYNTAX;
@@ -2414,9 +2417,9 @@ static int com_setatt_callback(struct afs_callback_arg *aca)
                        goto out;
                }
                if (c == '+')
-                       cad.add_mask |= (1UL << bitnum);
+                       cad.add_mask |= (one << bitnum);
                else
-                       cad.del_mask |= (1UL << bitnum);
+                       cad.del_mask |= (one << bitnum);
        }
        ret = -E_ATTR_SYNTAX;
        if (!cad.add_mask && !cad.del_mask)